У меня есть консольное приложение, которое я использую с Autofac.Когда я впервые начал работать над кодом - все шло довольно быстро - сейчас по какой-то причине требуется всего лишь 6 минут, чтобы просто запустить приложение.В основном 6 минут или более, чтобы разрешить все зависимости и запустить программу.
Вот как я настраивал программу ....
private static void Main(string[] args)
{
var container = ContainerConfig.Configure();
using (var scope = container.BeginLifetimeScope())
{
var app = scope.Resolve<IApplication>();
app.Run(args);
}
}
Вот класс ContainerConfig ....
public static class ContainerConfig
{
public static IContainer Configure()
{
var builder = new ContainerBuilder();
builder.RegisterType<Application>().As<IApplication>();
builder.RegisterType<AcmeEngineRepositoryBase>().As<IAcmeEngineRepositoryBase>();
builder.RegisterType<AuditLogicBase>().As<IAuditLogicBase>();
builder.RegisterType<AuditRepositoryBase>().As<IAuditRepositoryBase>();
builder.RegisterType<AuditLogic>().As<IAuditLogic>();
builder.RegisterType<AuditRepository>().As<IAuditRepository>();
builder.RegisterType<BirdieLogic>().As<IBirdieLogic>();
builder.RegisterType<BirdieRepository>().As<IBirdieRepository>();
builder.RegisterType<AttackLogic>().As<IAttackLogic>();
builder.RegisterType<AttackRepository>().As<IAttackRepository>();
builder.RegisterType<SettingsLogic>().As<ISettingsLogic>();
builder.RegisterType<SettingsRepository>().As<ISettingsRepository>();
builder.RegisterType<AcmeEngineLogic>().As<IAcmeEngineLogic>();
builder.RegisterType<AcmeEngineRepository>().As<IAcmeEngineRepository>();
builder.RegisterType<AcmeEngineApiRepository>().As<IAcmeEngineApiRepository>();
builder.RegisterType<ExperianLogic>().As<IExperianLogic>();
builder.RegisterType<ExperianRepository>().As<IExperianRepository>();
builder.RegisterType<ValidationLogic>().As<IValidationLogic>();
builder.Register(c => new MatchStat()).As<MatchStat>().SingleInstance();
return builder.Build();
}
}
Тогда у меня есть
public void Run(string[] args)
{
Application Code Here
}
Когда я только начинал, проблем не было, теперь, когда я добавил несколько пунктов, кажется, что ситуация ухудшается.Я предполагаю, что у меня есть некоторые проблемы с моими контейнерами IOC, но я прочитал много документации, и, кажется, ничто не указывает на мою проблему, которую я смог найти.
Кто-нибудь может пролить свет на этот вопрос?
Спасибо за ваше время.