1

C# コード行があるとします。

var myList = 新しいリスト {1,2,3};

そして、「myList」をウォッチ ウィンドウに配置し、リストの最初の項目を下にドラッグすると、ウォッチ ウィンドウは、このデータ メンバーの内部名を持つ新しい行を作成します。この場合は次のようになります。

(新しい System.Collections.Generic.Mscorlib_CollectionDebugView(myList)).Items[0]

私の質問は、EnvDTE の Expression の DataMember からこの内部名をプログラムで取得する方法はありますか?

どうもありがとう!

4

2 に答える 2

0

List<T>完全なレシピはありませんが、カスタム属性System.Diagnostics.DebuggerTypeProxyAttributeが に設定されProxyTypeNameていることがわかりますSystem.Collections.Generic.Mscorlib_CollectionDebugView'1。私が理解しているように、これは、ウォッチ ウィンドウで、元のプロキシ タイプではなく、そのプロキシ タイプが実際に表示されることを意味します。たぶん、これはあなたを正しい方向に向けることができます。

私が行った属性を取得するには:

myList.GetType().GetCustomAttributes(false);
于 2010-12-07T15:18:10.597 に答える
0

いいえ、できません。自分で巻く必要があります。

于 2011-02-16T22:21:53.123 に答える