Visual Studio 2005のイミディエイトウィンドウで300を超えるプロパティを持つオブジェクトのプロパティを表示しようとしています。最初の100項目のみが表示され、その後に次のキャプションが表示されます。
< More... (The first 100 of 306 items were displayed.) >
残りのアイテムを見ようとしていますが、わかりません。
これらはウォッチウィンドウで確認できましたが、同じではありません。
回答:
これはほぼ数年前のことですが、今日はこれに反対しました。ウォッチウィンドウではなく、イミディエイトウィンドウでリストを表示すると便利な場合があります。以下を使用すると、最初の100よりも多くの結果を簡単に確認できます。
yourList.Skip(100).ToArray()
これは本当に書くのに時間がかからず、うまく機能します-私にとっては役に立ちました。
更新:以下のコメントで指摘されているように、この回答は実際には間違っており、コレクションにのみ適用され、多くのプロパティを持つオブジェクトには適用されません。多くの人が便利だと思っているようですので、ここに残しておきます。
即時ウィンドウは、クイックビューツールとして設計されました。詳細を表示したい場合は、ウォッチウィンドウまたはクイックウォッチウィンドウのいずれかで表示する必要があります。
もう1つのオプションは、イミディエイトウィンドウと同様に動作するが、より多くのオプションがあるVisualStudioアドインを作成することです。
このようにデバッグするときは、常にオブジェクトをxmlにエクスポートする拡張メソッドを作成します。オブジェクトデータのトラブルシューティングに非常に役立ちます。これが私が使用するものです:
public static void SerializeToXML(this object entity)
{
System.Xml.Serialization.XmlSerializer writer = new System.Xml.Serialization.XmlSerializer(entity.GetType());
System.IO.StreamWriter file = new System.IO.StreamWriter(string.Format(@"{0}\{1}.xml", Directory.GetCurrentDirectory(), entity.GetType().Name));
writer.Serialize(file, entity);
file.Close();
}
100%完全な証拠ではありませんが、ほとんどの場合、完璧です。ファイル名としてオブジェクト名を使用して、アプリケーションディレクトリにxmlファイルを作成します。イミディエイトウィンドウで、オブジェクト名を入力してから.SerializeToXML()を入力するだけです。
だから:myList.SerializeToXML()