Jendela Visual Studio Immediate: cara melihat lebih dari 100 item pertama

89

Saya mencoba melihat properti objek dengan lebih dari 300 properti di Jendela Langsung Visual Studio 2005. Hanya 100 item pertama yang ditampilkan, diikuti dengan keterangan berikut:

 < More... (The first 100 of 306 items were displayed.) >

Saya mencoba melihat item lainnya, tetapi tidak dapat memahaminya.

Saya menyadari bahwa saya dapat melihat ini di jendela Watch, tetapi itu tidak sama.

DOK
sumber

Jawaban:

39

Saya tahu ini sudah terlambat. Namun, jika Anda menambahkan objek Anda ke jendela arloji. Perluas properti, tempat semua ditampilkan. Kemudian Ctrl-A dan Salin. Anda kemudian dapat menempelkan di excel untuk mendapatkan daftar properti yang terorganisir dan nilainya.

Gene Whitaker
sumber
Saya telah menyabotase diri saya sendiri selama 5 tahun dengan tidak melakukan ini.
secretwep
53

Saya tahu ini hampir bertahun-tahun yang lalu, tetapi saya menentangnya hari ini. Terkadang berguna untuk melihat daftar di jendela langsung daripada melihat di jendela arloji. Anda dapat dengan mudah melihat lebih banyak hasil daripada 100 hasil pertama dengan menggunakan:

yourList.Skip(100).ToArray()

Yang benar-benar tidak butuh waktu lama untuk menulis dan bekerja dengan baik - berguna bagi saya.

Pembaruan : Seperti yang ditunjukkan pada komentar di bawah, jawaban ini sebenarnya salah dan HANYA berlaku untuk koleksi dan BUKAN untuk objek dengan banyak properti. Saya meninggalkannya di sini karena banyak orang yang menganggapnya berguna.

Ian Routledge
sumber
Terima kasih telah menambahkan subjek. Seperti yang Anda temukan, terkadang pertanyaan "lama" memiliki jawaban untuk masalah hari ini!
DOK
Tidak yakin apa yang Anda maksud dengan "yourList" di sini? Apakah yang Anda maksud adalah objek yang saya coba lihat? Jika demikian, tidak berfungsi untuk saya di Visual Studio Pro 2013
Kunal
yourList akan menjadi objek (koleksi) yang Anda coba lihat dan biasanya bertipe IList <T> atau IEnumerable <T>. Semoga membantu.
Ian Routledge
2
Saya rasa itu berfungsi jika Anda ingin menampilkan item yang tersisa dalam koleksi, tetapi jawaban ini tidak berguna untuk Properti, seperti yang disebutkan dalam pertanyaan asli. Saya tidak tahu mengapa ini adalah jawaban yang dipilih. Jawaban Gene Whitaker di bawah ini adalah IMO yang jauh lebih berguna.
Simon ML
1
Poin yang adil, Anda benar jawaban ini sebenarnya salah! Telah menambahkan komentar pembaruan - jangan ragu untuk mengubah dll
Ian Routledge
16

Jendela langsung dirancang untuk menjadi alat tampilan cepat. Jika Anda ingin melihat lebih detail, Anda harus melihatnya baik di Watch Window atau Quick Watch Window.

Pilihan lainnya adalah menulis AddIn Visual Studio yang beroperasi mirip dengan Jendela Segera, tetapi memiliki lebih banyak pilihan.

Gabriel McAdams
sumber
Terima kasih. Saya berharap bahwa saya baru saja melewatkan sesuatu yang sederhana, sesuatu yang tidak melibatkan banyak klik, sesuatu yang akan membuatnya mudah untuk menggulir ratusan item. Saya pikir Anda telah mengidentifikasi alternatif terbaik.
DOK
1
@ DOK: Sekarang ada jawaban yang lebih baik untuk pertanyaan ini yang mungkin layak untuk diterima.
Eric J.
@Gabriel Apakah ini benar-benar dirancang untuk menjadi alat tampilan cepat? Tampaknya jauh lebih dari itu, meskipun ia memiliki dan berguna untuk kemampuan itu. Tampaknya unik, dan berguna bagi saya, untuk evaluasi, baik prescient maupun spekulatif. Saya yakin ini lebih dari sekadar mesin "Apa Adanya" yang dapat digunakan untuk melihat, tetapi mesin "Bagaimana Jika" untuk dijelajahi.
G DeMasters
4

Saya selalu membuat metode ekstensi untuk mengekspor objek ke xml saat melakukan debug seperti ini. Ini sangat berguna untuk memecahkan masalah data objek. Inilah yang saya gunakan:

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();
}

Ini bukan 100% bukti penuh, tetapi sebagian besar waktu itu sempurna. Ini akan membuat file xml di direktori aplikasi dengan nama objek sebagai nama file. Di jendela langsung Anda cukup mengetik nama objek kemudian .SerializeToXML ().

jadi: myList.SerializeToXML ()

John
sumber