是否可以强制Castle DynamicProxy生成的代理实现成员作为显式接口实现?

时间:2016-07-26 14:50:02

标签: c# .net interface mixins castle-dynamicproxy

例如,假设我已经按如下方式定义了一个接口:

public interface IWhatever
{
     string Text { get; set; }
}

我在mixin中实现它:

public class WhateverMixin : IWhatever
{
     string IWhatever.Text { get; set; }
}

当我构建某个给定类的代理时,整个显式实现的接口成员显示为隐式实现,因此它已发布

你知道我是否可以给Castle DynamicProxy提供一些选项来强制实现具有显式实现的接口?

1 个答案:

答案 0 :(得分:2)

不幸的是,DynamicProx似乎没有任何选择。 ProxyGenerationOptionsMixinData类中没有此类设置,如果您查看代码(从MixinContributor开始,这会导致MethodGenerator),可以看到它只是从接口方法复制名称和属性(可见性等)。

相关问题