Я пытаюсь сделать какой-то перехват с помощью Autofac. В настоящее время у меня настроены некоторые объекты bll:
updater.RegisterGeneric(typeof(BaseBll<>))
.AsImplementedInterfaces()
.InstancePerRequest()
.PropertiesAutowired(PropertyWiringOptions.AllowCircularDependencies)
.InterceptedBy(typeof(ActivityLogger));
updater.Register(c => new ActivityLogger());
Я помещаю атрибут Interception в один из классов:
[Intercept(typeof(ActivityLogger))]
public class MyClassBll : BaseBll<TModel>, IMyClassBll
К сожалению, метод Intercept не вызывается при вызове некоторых методов из MyClassBll. Если у вас есть какие-либо идеи, как это можно исправить, пожалуйста, дайте мне знать.
На данный момент я нашел временный обходной путь:
updater.RegisterType<MyClassBll>().As<IMyClassBll>().EnableInterfaceInterceptors();