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

ILSpyを使用し System.Core 4.0.0.0 て取得しました

ここに画像の説明を入力してください

ですから、実際には含意が存在します...

于 2012-06-19T13:44:38.703 に答える