我正在尝试创建一个工具,它将根据类属性向注册的类添加一些拦截器。这是我的设施:
public class MyFacility : AbstractFacility
{
protected override void Init()
{
this.Kernel.ComponentRegistered += (s, h) =>
{
if (h.ComponentModel.Implementation.GetCustomAttributes(typeof(MyAttribute), false).Length > 0)
{
h.ComponentModel.Interceptors.Add(InterceptorReference.ForType<MyInterceptor>());
}
}
}
}
但是这样,当我this
在类方法中使用关键字时,它指的是目标类而不是代理类,这使得我使用的某些框架无法正常工作。
我需要使用工具创建与该ProxyGenerator.CreateClassProxy<MyClass>()
方法生成的相同代理。
我怎样才能做到这一点?