Vytvoření vizuální mapy zásobníku volání při ladění (C#, Visual Basic, C++, JavaScript)
Vytvořte mapu kódu pro vizuální trasování zásobníku volání při ladění. Na mapě můžete dělat poznámky, abyste mohli sledovat, co kód dělá, abyste se mohli soustředit na hledání chyb.
Podrobnosti o příkazech a akcích, které můžete použít s mapami kódu, najdete v tématu Procházení a změna uspořádání map kódu.
Důležité
Mapy kódu můžete vytvářet pouze v edici Visual Studio Enterprise.
Tady je rychlý přehled mapy kódu:
Mapování zásobníku volání
V projektu Visual Studio Enterprise C#, Visual Basic, C++ nebo JavaScript spusťte ladění výběrem >možnosti Spustit ladění nebo stisknutím klávesy F5.
Jakmile aplikace přejde do režimu přerušení nebo přejdete do funkce, vyberte Mapu kódu ladění>nebo stiskněte kombinaci kláves Ctrl+Shift.+`
Aktuální aktuální zásobník volání se zobrazí oranžově na mapě nového kódu:
Mapování kódu se automaticky aktualizuje, jakmile budete pokračovat v ladění. Změna položek nebo rozložení mapy nijak neovlivní kód. Nebojte se přejmenovat, přesunout nebo odebrat cokoli na mapě.
Pokud chcete získat další informace o položce, najeďte myší na ni a podívejte se na popis položky. Na panelu nástrojů můžete také vybrat legendu a zjistit, co jednotlivé ikony znamenají.
Poznámka:
Zpráva Diagram může být založená na starší verzi kódu v horní části mapy kódu znamená, že se kód mohl po poslední aktualizaci mapy změnit. Například volání do mapy nemusí již v kódu existovat. Zavřete zprávu a potom zkuste znovu sestavit řešení před opětovnou aktualizací mapy.
Mapování externího kódu
Ve výchozím nastavení se na mapě zobrazí jenom váš vlastní kód. Zobrazení externího kódu na mapě:
Klikněte pravým tlačítkem v okně Zásobník volání a vyberte Zobrazit externí kód:
Nebo zrušte výběr možnosti Povolit pouze můj kód v nástrojích Visual Studio Tools (nebo ladění)>> Ladění:
Řízení rozložení mapy
Změna rozložení mapy nijak neovlivní kód.
Pokud chcete řídit rozložení mapy, vyberte na panelu nástrojů mapy nabídku Rozložení .
V nabídce Rozložení můžete:
- Změňte výchozí rozložení.
- Automatické uspořádání mapy zastavíte zrušením výběru automatického rozložení při ladění.
- Pokud přidáváte položky, změňte uspořádání mapy co nejméně tak, že zrušíte výběr přírůstkového rozložení.
Vytváření poznámek k kódu
Přidáním komentářů můžete sledovat, co se děje v kódu.
Pokud chcete přidat komentář, klikněte pravým tlačítkem na mapu kódu a vyberte Upravit>nový komentář a zadejte komentář.
Pokud chcete do komentáře přidat nový řádek, stiskněte Shift+Enter.
Aktualizace mapy pomocí dalšího zásobníku volání
Když aplikaci spustíte na další zarážku nebo krok do funkce, mapa automaticky přidá nové zásobníky volání.
Pokud chcete mapě zabránit v automatickém přidávání nových zásobníků volání, vyberte na panelu nástrojů mapy kódu. Mapa nadále zvýrazňuje existující zásobníky volání. Pokud chcete do mapy ručně přidat aktuální zásobník volání, stiskněte kombinaci kláves Ctrl+Shift.+`
Přidání souvisejícího kódu do mapy
Teď, když máte mapu v jazyce C# nebo Visual Basic, můžete přidat položky, jako jsou pole, vlastnosti a další metody, a sledovat, co se v kódu děje.
Pokud chcete přejít k definici metody v kódu, poklikejte na metodu v mapě nebo ji vyberte a stiskněte klávesu F12, nebo na ni klikněte pravým tlačítkem myši a vyberte Přejít na definici.
Pokud chcete do mapy přidat položky, které chcete sledovat, klikněte pravým tlačítkem myši na metodu a vyberte položky, které chcete sledovat. Naposledy přidané položky se zobrazují zeleně.
Poznámka:
Ve výchozím nastavení přidáte položky do mapy také uzly nadřazené skupiny, jako je třída, obor názvů a sestavení. Tuto funkci můžete vypnout a zapnout tak , že na panelu nástrojů mapy kódu vyberete tlačítko Zahrnout rodiče nebo stisknete klávesu Ctrl a přidáte položky.
Pokračujte v sestavování mapy, pokud chcete zobrazit další kód.
Vyhledání chyb pomocí mapy
Vizualizace kódu můžete nalézt chyby rychleji. Předpokládejme například, že zkoumáte chybu v aplikaci kreslení. Když nakreslíte čáru a pokusíte se vrátit akci zpět, nic se nestane, dokud nenakreslíte další čáru.
Proto nastavíte zarážky v objektech clear
, undo
a Repaint
metodách, spustíte ladění a sestavíte mapu takto:
Všimněte si, že všechna uživatelská gesta na mapě volání Repaint
, s výjimkou undo
. To může vysvětlit, proč undo
nefunguje okamžitě.
Jakmile chybu opravíte a budete pokračovat ve spuštění aplikace, mapa přidá nové volání z undo
Repaint
:
Sdílení mapy s ostatními
Mapu můžete exportovat, poslat ostatním pomocí Microsoft Outlooku, uložit ji do řešení a zkontrolovat ji do správy verzí.
Pokud chcete mapu sdílet nebo uložit, použijte možnost Sdílet na panelu nástrojů mapy kódu.