我正在使用 ChannelFactory 在运行时为 WCF 服务创建代理。我想使用 DynamicProxy Castle 项目在 WCF 代理之上创建一个动态代理,以便我可以拦截呼叫并进行模拟。
但是,当我尝试此操作时出现错误...错误消息是:
'this' 类型不能是接口本身。
我的代码是这样的(其中 T 是服务合同接口):
var generator = new ProxyGenerator();
return (T)generator.CreateInterfaceProxyWithTarget(typeof(T), channel,
new[] { new ImpersonationInterceptor() } );
问题一定是ChannelFactory生成的服务代理是在运行时生成的,但是有什么办法可以解决这个问题呢?