Я разрабатываю приложение на asp.net api2 с autofac и mediatR, в настоящее время сталкивающееся с некоторой проблемой с внедрением зависимостей.
// This is registered in the global.asax file and working properly in the controller level
//i'm trying to register the entity framework context as instance per request
builder.RegisterType<EFContext>().InstancePerRequest();
Однако при отправке команды через конвейер MediatR,я получаю исключение, потому что поставщик услуг MetdiatR не может прочитать область запроса http.
Ниже код также находится в глобальном файле asax.
builder.Register<ServiceFactory>(context =>
{
var componentContext = context.Resolve<IComponentContext>();
return t => { object o;
return componentContext.TryResolve(t, out o) ? o : null; };
});
, так как вызывается функция делегата для локатора службы.он выдает ошибку о том, что из области в .... не видна область с тегом, совпадающим с «AutofacWebRequest».
Есть ли какой-нибудь обходной путь, чтобы mediatr ServiceFactory знал об области действия Inofance InstancePerRequest?