Я работаю с Принадлежит типа, как здесь: Strong reference of Autofac 2проблемы конфигурации Autofac пытаются интегрировать Quartz
Я также использую Quartz планировщик, MSMQ и EF.
My config выглядит следующим образом. У меня явно что-то не так, поскольку контекст, который вводится в репозитории, является другим экземпляром, чем тот, который предоставляется службе.
builder.RegisterType<EmailAllocationJob>();
builder.RegisterGeneric(typeof(JobWrapper<>));
builder.RegisterType<DataContext>().InstancePerOwned<EmailAllocationJob>();
builder.RegisterType<DataContext>().As<IUnitOfWork>();
builder.RegisterType<EmailAccountRepository>().As<IEmailAccountRepository>();
builder.RegisterType<EmailMessageRepository>().As<IEmailMessageRepository>();
builder.RegisterType<EmailMessageQueue>().As<IEmailMessageQueue>();
builder.RegisterType<EmailAllocationService>().As<IEmailAllocationService>();
Я не могу на всю жизнь выяснить, как настроить конфигурацию. Я считаю, что это линия:
builder.RegisterType<DataContext>().As<IUnitOfWork>();
То, что я хочу сказать, что-то вроде:
builder.RegisterType<DataContext>().As<IUnitOfWork>().InstancePerOwned<EmailAllocationJob>();
Спасибо заранее, если вы можете помочь.