I have Configured webapi with IAutofacExceptionFilter
to get the Exception Details. registered all the things in autofac.config
HttpConfiguration config = ServiceConfig.Initialize(new ConfigBuilder(options, (configuration, builder) =>
{
builder.RegisterType<ErrorLoggingExceptionFilter>()
.AsWebApiExceptionFilterFor<BaseController>()
.InstancePerApiRequest();
builder.RegisterWebApiFilterProvider(GlobalConfiguration.Configuration);
//builder.RegisterType<ErrorLoggingExceptionFilter>()
//.AsWebApiExceptionFilterFor<BaseController>().SingleInstance();
builder.OverrideWebApiActionFilterFor<BaseController>();
builder.RegisterSource(
new AnyConcreteTypeNotAlreadyRegisteredSource(t =>
!(t.IsGenericType && t.GetGenericTypeDefinition() == typeof(Meta<>))
));
}
var serviceResolver = (AutofacWebApiDependencyResolver)config.DependencyResolver;
but it gives me error like
The
AutofacWebApiDependencyResolver
must be configured as the dependency resolver for Web API before theAutofacControllerConfigurationAttribute
can resolve services from the container for a controller type.
You should do something like this to make AutofacWebApiDependencyResolver
your default Web API dependency resolver :
// Set the dependency resolver to be Autofac.
var builder = new ContainerBuilder();
var container = builder.Build();
config.DependencyResolver = new AutofacWebApiDependencyResolver(container);
See Autofac documentation for more info.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.