例如,假设我已经按如下方式定义了一个接口:
public interface IWhatever
{
string Text { get; set; }
}
我在mixin中实现它:
public class WhateverMixin : IWhatever
{
string IWhatever.Text { get; set; }
}
当我构建某个给定类的代理时,整个显式实现的接口成员显示为隐式实现,因此它已发布。
你知道我是否可以给Castle DynamicProxy提供一些选项来强制实现具有显式实现的接口?
答案 0 :(得分:2)
不幸的是,DynamicProx似乎没有任何选择。 ProxyGenerationOptions
或MixinData
类中没有此类设置,如果您查看代码(从MixinContributor
开始,这会导致MethodGenerator
),可以看到它只是从接口方法复制名称和属性(可见性等)。