1

查看 System.Dynamic.ExpandoObject 的定义我遇到了这个:

public sealed class ExpandoObject : IDynamicMetaObjectProvider, IDictionary<string, object>, ICollection<KeyValuePair<string, object>>, IEnumerable<KeyValuePair<string, object>>, IEnumerable, INotifyPropertyChanged
{
    public ExpandoObject();
}

为什么 ExpandoObject 类不实现接口?

4

3 回答 3

2

ExpandoObject具有接口的显式实现。显式实现允许它仅在转换为接口本身时才可访问。

于 2012-06-19T13:40:59.080 回答
1

使用.Net Reflector之类的东西,您可以看到每个接口的实现。代码太长,无法在此处发布,但都在其中。只需在反射器中搜索 ExandoObject,您就会看到成员。

于 2012-06-19T13:44:46.483 回答
0

我使用ILSpySystem.Core 4.0.0.0 得到

在此处输入图像描述

所以实际上存在实现......

于 2012-06-19T13:44:38.703 回答