Porady: pisanie wizualizatora
Można napisać niestandardowy visualizer dla obiektu klasy zarządzane z wyjątkiem Object lub Array.
[!UWAGA]
W magazyn aplikacje, tylko standardowego tekstu HTML, XML i JSON visualizers są obsługiwane.Visualizers niestandardowe (utworzone przez użytkownika) nie są obsługiwane.
Architektura visualizer debugera zawiera dwie części:
Debuger po stronie działa w ramach debuger programu Visual Studio.Kod po stronie debuger tworzy i wyświetla interfejsu użytkownika dla użytkownika visualizer.
Po stronie obiekt debugowany działa w ramach procesu jest debugowania programu Visual Studio ( obiekt debugowany).
Obiekt danych, które mają być wyświetlane (na przykład obiekt String) istnieje w procesie obiektem debugowanym.Tak po stronie obiekt debugowany musi wysyłać ten obiekt danych na stronie debugera, które można następnie wyświetlać je za pomocą interfejsu użytkownika, które można utworzyć.
Po stronie debuger odbiera tego obiektu danych do można wywołać z dostawcy obiektów , który zawiera IVisualizerObjectProvider interfejsu.Po stronie obiekt debugowany wysyła obiekt danych za pośrednictwem źródło obiektu, który jest tworzony na podstawie VisualizerObjectSource.Obiekt dostawcy można również wysłanie danych z powrotem do źródła obiektu, które umożliwia zapisu visualizer, który umożliwia edytowanie, a także wyświetla, danych.Dostawcy obiektów można przesłonić, aby porozmawiać ewaluatora wyrażenie i dlatego źródło obiektu
Po stronie obiekt debugowany i debuger komunikować się za pośrednictwem Stream.Metody są przekazywane do serializacji obiektu danych do Stream i deserializacji Stream ponownie na obiekt danych.
Obiekt debugowany kod po stronie jest określony za pomocą atrybutu DebuggerVisualizer (DebuggerVisualizerAttribute).
Tworzenie interfejsu użytkownika visualizer na stronie debuger, należy utworzyć klasę, która dziedziczy DialogDebuggerVisualizer i zastąpić DialogDebuggerVisualizer.Show metodę w celu wyświetlenia interfejsu.
Można użyć IDialogVisualizerService do wyświetlania formularzy, okien dialogowych i formanty ze swojej visualizer systemu Windows.
Pomoc techniczna dla typów ogólnego jest ograniczona.Umożliwia to pisanie visualizer dla obiektu docelowego, który jest typem podstawowym tylko wtedy, gdy typ ogólny jest typem otwartym.To ograniczenie jest taka sama jak ograniczenia, używając DebuggerTypeProxy atrybutu.Szczegółowe informacje – zobacz: Korzystanie z atrybutu DebuggerTypeProxy.
Niestandardowe visualizers mogą mieć kwestie związane z bezpieczeństwem.Zobacz Zagadnienia dotyczące zabezpieczeń internetowych.
Następujących procedur, dają one ogólne pojęcie, co należy zrobić, aby utworzyć visualizer.Aby uzyskać bardziej szczegółowe informacje, zobacz Wskazówki: Pisanie wizualizatora w C#.
Aby utworzyć po stronie debugera
Użyj IVisualizerObjectProvider metod do pobrania na stronie debuger visualized obiektu.
Utwórz klasę, która dziedziczy DialogDebuggerVisualizer.
Zastąp DialogDebuggerVisualizer.Show metodę w celu wyświetlenia interfejsu użytkownika.Użyj IDialogVisualizerService metody służące do wyświetlania formularzy, okien dialogowych i formantów systemu Windows w ramach interfejsu.
Zastosuj DebuggerVisualizerAttribute, nadając mu visualizer (DialogDebuggerVisualizer).
Aby utworzyć obiekt debugowany bok
Zastosuj DebuggerVisualizerAttribute, nadając mu visualizer (DialogDebuggerVisualizer) i źródłem obiektu (VisualizerObjectSource).Jeśli pominięto źródło obiektu, zostanie użyte domyślnego obiektu źródła
Twój visualizer, aby można było edytować obiekty danych, należy również zgodnie z ich, wyświetlić należy zastąpić TransferData lub CreateReplacementObject metody z VisualizerObjectSource.
Zobacz też
Zadania
Porady: instalacja programu Visualizer
Porady: testowanie i debugowanie wizualizera
Koncepcje
Zagadnienia dotyczące zabezpieczeń internetowych