Microsoft.VisualStudio.DebuggerVisualizers Ruang nama
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Kelas
DialogDebuggerVisualizer |
Semua Visualizer Debugger kustom harus berasal dari kelas ini dan menyediakan konstruktor tanpa parameter untuk dipanggil oleh VS. |
VisualizerDevelopmentHost |
Kelas host untuk pengujian selama pengembangan visualizer kustom Terkelola. |
VisualizerObjectSource |
Menyediakan akses ke objek yang sedang divisualisasikan. |
VisualizerObjectSourceException |
Mewakili pengecualian yang dilemparkan dari sisi debuggee - melalui EE, infrastruktur visualizer (host debuggee) atau kode pengguna debuggee, dan dilemparkan di sisi UI (dapat ditangkap dari DialogDebuggerVisualizer). Ini adalah UI kasar yang setara dengan Microsoft.VisualStudio.VIL.VisualStudioHost.DebuggeeVisualizerException. |
Antarmuka
IAsyncVisualizerObjectProvider |
Menyediakan implementasi asinkron untuk metode yang ditentukan dalam IVisualizerObjectProvider2 yang menyediakan fungsionalitas untuk meneruskan data dari debugee ke visualizer dan sebaliknya. |
IDeserializableObject |
Antarmuka yang digunakan untuk mendeserialisasi objek ketika format yang mendasarinya (biner atau JSON) tidak diketahui. |
IDialogVisualizerService |
Menyediakan metode yang dapat dipanggil oleh visualizer untuk menampilkan formulir, dialog, dan kontrol System.Windows. |
IVisualizerObjectProvider |
Menyediakan data objek dari debuggee ke visualizer. |
IVisualizerObjectProvider2 |
Menyediakan fungsionalitas tambahan untuk meneruskan data dari debuggee ke visualizer. |
IVisualizerObjectProvider3 |
Memungkinkan debugger visualizer dan komponen sisi debuggee mengoordinasikan mekanisme serialisasi mana yang akan digunakan, dan menyediakan fungsionalitas tambahan untuk meneruskan data ke sisi debuggee dengan mempertimbangkan SelectedFormatterPolicy. |
Enum
FormatterPolicy |
Gaya pemformatan yang digunakan saat menserialisasikan/mendeserialisasi informasi dari VisualizerObjectSource. |
Contoh
public class DebuggerSide : DialogDebuggerVisualizer
{
override protected void Show(IDialogVisualizerService windowService, IVisualizerObjectProvider objectProvider)
{
MessageBox.Show(objectProvider.GetObject().ToString());
}
// . . . Other methods omitted for clarity.
}
Keterangan
Visualizer adalah program kecil yang digunakan debugger Visual Studio untuk menampilkan, yaitu memvisualisasikan, objek dari jenis data tertentu dengan cara yang bermakna. Untuk memvisualisasikan objek, visualizer menggunakan kode yang berjalan dalam proses debugger ( sisi debugger) dan kode dalam proses yang sedang di-debug (sisi debuggee).
Sisi debugger dan sisi debuggee berkomunikasi satu sama lain menggunakan VisualizerObjectSource dan IVisualizerObjectProvider.
Sisi debuggee menggunakan VisualizerObjectSource untuk menentukan VisualizerObjectSource objek untuk sisi debugger. Sisi debugger meminta dan menerima informasi ini dengan memanggil metode pada IVisualizerObjectProvider antarmuka.
Visualizer dapat mengedit, serta menampilkan, data. Jika visualizer Anda mendukung pengeditan data, Anda harus mengganti data sepenuhnya dengan memanggil ReplaceData atau ReplaceObject atau mentransfer data kembali ke debuggee menggunakan TransferData atau TransferObject. Jika Anda ingin menyimpan data kembali, Anda juga perlu membuat sumber objek Anda sendiri.