Přechod na relaci ladění ve Visual Studiu (Xaml a C#)
Tato Stručná ukazuje, jak přejít relace ladění sady Visual Studio a jak můžete zobrazit a změnit stav aplikace v relaci.
Tato Stručná je pro vývojáře, kteří jsou nové ladění se sadou Visual Studio a pro vývojáře, kteří chtějí dozvědět více o navigaci v sadě Visual Studio ladění relace. Není ji naučit uměleckých ladění samotného. Metody v ukázkový kód slouží pouze k ukázce ladění postupy popsané v tomto tématu. Metody nepoužívají osvědčené postupy aplikace nebo funkce návrhu. Ve skutečnosti rychle zjistíte, metody a aplikaci, samotného, neprovádějte velká část nic vůbec.
V částech tohoto Začínáme byly navrženy jako co nejpřesněji, jako nezávislé, takže můžete přeskočit všechny oddíl, který obsahuje informace, které jste již seznámit s. Také není nutné vytvořit aplikaci ukázky; však doporučujeme jej a provedli proces co největší.
Ladicí program klávesové zkratky. Navigační ladicí program Visual Studio je optimalizována pro myši a klávesnice. Mnohé z těchto kroků v tomto tématu zahrnout klávesovou zkratku nebo klávesovou zkratku kulatých závorek příspěvku. Můžete například (klávesnice: F5) označuje napíšete klávesy F5 spustí nebo pokračuje v provádění ladicí program.
V tomto tématu
Dozvíte, jak:
Vytvořit vzorová aplikace
Nastavit a spustit a zarážky, krok do metody a zkontrolujte data programu
Do, přes, a to z metody
Nastavení podmíněné zarážky, spuštění provést do pozice kurzoru a vizualizovat proměnné
Upravit a pokračovat, odstranění výjimky
Vytvořit vzorová aplikace
Při ladění jde o kódu, tak vzorová aplikace používá architekturu aplikací pro Windows Store pouze k vytvoření zdrojového souboru, ve kterém se zobrazí jak navigaci relaci ladění funguje a jak prozkoumejte a změnit stav programu. Všechny kód, který bude vyvolán je volána z konstruktoru hlavní stránky. nejsou přidány žádné ovládací prvky a jsou zpracovány žádné události.
Vytvořit aplikaci Windows Store C# výchozí Otevřít sadu Visual Studio. Na domovské stránce zvolte Nový projekt odkazu. V dialogovém okně Nový projekt zvolíte možnost Visual C# v nainstalované seznamu a poté zvolte možnost Windows Store. V seznamu šablon projektů, zvolte aplikace. Visual Studio vytvoří nové řešení a projekt a zobrazí MainPage.xaml designer a editor kódu XAML.
Otevřít zdrojový soubor MainPage.xaml.cs. Klikněte pravým tlačítkem kdekoliv v editoru XAML a zvolte možnost zobrazení kódu. Zobrazí se soubor MainPage.xaml.cs kódu. Všimněte si, že pouze jednu metodu MainPage() konstruktoru, je uvedena v souboru.
Nahradit ukázkový kód konstruktoru MainPage. Odstraníte metodu MainPage(). Na tento odkaz: Ladicí program navigační ukázkový kód (Xamll a C#), a zkopírujte kód uvedeného v oddílu C# do schránky. (Zvolte Zpět v prohlížeči nebo prohlížeč nápovědy se vrátíte na tuto stránku Začínáme.) V editoru sady Visual Studio vložte kód v partial class MainPage bloku. Zvolte kláves CTRL + s uložte soubor.
Nyní můžete sledovat společně s příklady v tomto tématu.
Nastavit a spustit a zarážky, krok do metody a zkontrolujte data programu
Nejběžnější způsob, zda je možné spustit relaci ladění, je zvolit Spustit ladění z ladění nabídky (klávesnice: F5). Provádění začíná a pokračuje, dokud není dosaženo zarážky, můžete ručně pozastavte, dojde k výjimce, nebo aplikaci ukončí.
Při provádění je pozastaveno v ladicí program, můžete zobrazit hodnotu aktivní proměnné v popisu dat nastavením ukazatele myši nad proměnné. Také můžete otevřít okna Locals a Autos Chcete-li zobrazit seznam aktivní proměnné a jejich aktuálních hodnot. Přidání jednoho nebo více proměnných pustit okna se můžete soustředit na základě hodnoty proměnné jako aplikaci pokračuje v provádění kódu.
Poté, co můžete pozastavit provádění kódu aplikace (což je také označován jako rozdělení do ladicího programu), můžete určit způsob, jakým zbytek programového kódu není proveden. Můžete pokračovat řádek po řádku přesun z volání metody metoda sama, nebo můžete položit volána metoda v jediném kroku. Tyto postupy se nazývají krokování aplikaci. Můžete také obnovit standardní provádění kódu aplikace, spuštěním na další zarážky, kterou jste nastavili, nebo na řádek, kde je umístěn kurzor. Můžete ukončit relaci ladění kdykoli znovu. Ladicí program je určen k nezbytné operacích čištění a ukončete provádění.
Příklad 1
V tomto příkladu můžete nastavení zarážky v konstruktoru MainPage souboru MainPage.xaml.cs, Krokovat s vnořením první metoda, zobrazení hodnot proměnných a poté se zastaví ladění.
Nastavení zarážky. Nastavení zarážky na příkaz methodTrack = "Main Page"; v konstruktoru MainPage. Vyberte řádek na šedou barvou oddělovací mezery u editoru zdrojového kódu (klávesnice: pozici kurzoru v řádku a zvolte možnost klávesu F9).
Ikona zarážky se zobrazí ve hřbetu.
Spuštěny za účelem zarážky. Začněte volbou ladicí relaci Spustit ladění na ladění nabídky (klávesnice: F5).
Aplikace zahájí provádění a pozastaví provádění bezprostředně před prohlášení, na kterém je nastavit zarážky. Aktuální ikona čáry v oddělovací mezery identifikuje svou zemi/oblast a je vybrán aktuální příkaz.
Jsou nyní plnou kontrolu nad provádění kódu aplikace a zkontrolovat stav programu jako krokování příkazů programu.
Krok do metody. Na ladění nabídce zvolte Krokovat s vnořením (klávesnice: F11).
Všimněte si, že ladicí program se přesune na další řádek, který je volání metody priklad1. Zvolte Krokovat s vnořením znovu. Ladicí program se přesune do vstupní bod priklad1 metody. To znamená, aby byl načten metody v zásobníku volání a byly přiděleny paměť pro místní proměnné.
Při krokování do řádku kódu provede ladicí program jednu z následujících akcí:
Příkaz Další není volání funkce ve vašem řešení, ladicí program provede příkaz, přejde na další prohlášení a následně pozastaví provádění.
Pokud je příkaz voláním funkce v rámci vašeho řešení, ladicí program se přesune vstupní bod volané funkce a následně pozastaví provádění.
Krokovat s vnořením prohlášení o priklad1 dokud dosáhli jste místo výstupu i nadále. Ladicí program se označují složená závorka metody.
Zkontrolujte hodnoty proměnných v popisů dat. Při přesunutí ukazatele myši nad název proměnné, zobrazí se v popisu dat název, hodnotu a typ proměnné.
Ukazatele myši nad proměnné a. Všimněte si, zadejte název, hodnotu a data. Ukazatele myši nad proměnné methodTrack. Znovu Všimněte si, zadejte název, hodnotu a data.
Zkontrolujte hodnoty proměnných v okně Locals. Na ladění nabídce přejděte na Windows, a poté zvolte možnost Locals. (Klávesnice: Alt + 4).
Okna Locals je strom parametry a proměnné funkce. Vlastnosti proměnné objektu jsou podřízené uzly samotného objektu. this Proměnná je skrytý parametr v každém metodu objektu, která představuje samotného objektu. V takovém případě představuje třídu MainPage. Protože methodTrack je členem MainPage třídy, jeho hodnota a datové typy jsou uvedeny v řádku pod this. Rozbalit this uzel, chcete-li zobrazit methodTrack informace.
Přidat pustit pro proměnnou methodTrack. methodWatch Proměnná se používá v rámci této Začínáme k zobrazení metody v příklady volat. Aby bylo snazší, chcete-li zobrazit hodnotu proměnné, ho přidáte do okno kukátka. Klikněte pravým tlačítkem na název proměnné v okně Locals a poté zvolte možnost Přidat pustit.
Podívejte se na více proměnných v okno kukátka. Hodnoty sledovaných proměnných, jako jsou hodnoty v místních položek a data tip windows, jsou aktualizovány při každém spuštění je dočasně blokován. Proměnné můžete také přidat do okna kukátka z editoru kódu. Vyberte proměnnou, chcete-li sledovat, klepněte pravým tlačítkem myši a poté zvolte možnost Přidat pustit.
Do, přes, a to z metody
Na rozdíl od krokování metoda volána metodou nadřazeného, krokování přes metoda provede metodu podřízené a následně pozastaví provádění kódu v metodě volajícího jako nadřazený obnoví. Pokud máte zkušenosti s tak, jak metoda funguje a si jisti, že jeho spuštění neovlivní problém, který jsou zkoumáte, může být krok přes metodu.
Krokování přes řádek kódu, který neobsahuje volání metody provede řádku stejně jako krokování řádku.
Krokování mimo metodu podřízené pokračuje v provádění metody a následně pozastaví provádění po metoda vrátí jeho volání metody. Až zjistíte, že zbývající funkce není důležité, může vzad po dlouhé funkce.
Krokování přes i Krokování ven z funkce spuštění funkce.
Příklad 2
V tomto příkladu kroku do, přes a z metody.
Volat metodu priklad2 v konstruktoru MainPage. Upravit konstruktoru MainPage a nahraďte následující řádek methodTrack = String.Empty; s Example2();.
Spuštěny za účelem zarážky. Začněte volbou ladicí relaci Spustit ladění na ladění nabídky (klávesnice: F5). Ladicí program pozastaví provádění kódu u zarážky.
Krok nad řádku kódu. Na ladění nabídce zvolte Krokovat s přeskočením (klávesnice: F10). Provede ladicí program methodTrack = "MainPage"; prohlášení stejným způsobem jako krokování prohlášení.
Krok do priklad2 a Example2_A. Zvolte klávesy F11 Krokovat s vnořením metodu příklad 2. Krokovat s vnořením příkazy priklad2 klikáním řádku i nadále int x = Example2_A();. Znovu krok do tohoto řádku přeměnit vstupní bod Example2_A. Krokovat s vnořením každé tvrzení Example2_A až se vrátíte do priklad2 i nadále.
Krok přes funkci. Všimněte si, že na další řádek v test2, int y = Example2_A(); je v podstatě stejná jako předchozím řádku. Můžete bezpečně přeskočit tento řádek. Zvolte klávesu F10 přejít od obnovení priklad2 na této druhé volání Example2_A. Zvolte F10 Krok přes tuto metodu. Všimněte si, že methodTrack řetězec označuje metodu Example2_A nebylo provedeno dvakrát. Také můžete všimnout, že ladicí program okamžitě přejde na další řádek. Není ji je pozastavte v bodu priklad2 obnoví.
Krok mimo funkci. Zvolte klávesy F11 Krokovat s vnořením Example2_B metody. Všimněte si, že není velmi liší od Example2_A Example2_B. Chcete-li krok mimo metodu, zvolte Krok ven na ladění nabídky (klávesnice: Shift + F11). Všimněte si, že methodTrack proměnné označuje, že byl proveden Example2_B a že ladicí program vrátil do bodu, kde priklad2 obnoví.
Ukončit ladění. V nabídce ladění, zvolte možnost Zastavit ladění (klávesnice: Shift + F5). Dojde k ukončení ladicí relace.
Nastavení podmíněné zarážky, spuštění provést do pozice kurzoru a vizualizovat proměnné
Podmíněné zarážky Určuje podmínku, která způsobí, že ladicí program pozastaví provádění. Podmínka je určen libovolný výraz kódu, který může být vyhodnocen jako true nebo false. Například může použít podmíněné zarážky ke zkontrolování stavu program v často volané metodě pouze v případě, že proměnnou dosáhne určitou hodnotou.
Vypadá jako nastavení zarážky jednorázové spuštění provést do pozice kurzoru. Při provádění je pozastaveno, můžete vybrat řádek ve zdroji a obnoví spuštění, dokud není dosaženo vybraný řádek. Například můžete může krokování smyčku v metodě a určit, že kód ve smyčce pracuje správně. Namísto krokování každé iteraci cyklu smyčky, můžete spustit ke kurzoru, který je umístěn po provedení smyčky.
V některých případech je obtížné zobrazení hodnoty proměnné v řádku dat tip nebo proměnné okna. Ladicí program, můžete zobrazit v visualizer text, který představuje formátovaná zobrazení hodnoty v okně a posuvný řetězce, HTML a Xml.
Příklad 3
V tomto příkladu nastavíte podmíněný zarážky přerušení na konkrétní iteraci smyčky, a pak provést do pozice kurzoru, který je umístěn za smyčky. Můžete také zobrazit hodnotu proměnné v textu visualizer.
Volat metodu Example3 v konstruktoru MainPage. Upravit konstruktoru MainPage a nahraďte následující řádek methodTrack = String.Empty; s řádkem Example3();.
Spuštěny za účelem zarážky. Začněte volbou ladicí relaci Spustit ladění na ladění nabídky (klávesnice: F5). Ladicí program pozastaví provádění kódu u zarážky v metodě MainPage.
Krok do metody Example3. Zvolte Krokovat s vnořením na ladění nabídky (klávesnice: F11) přejděte do vstupní bod Example3 metody. Krokování do metody, dokud nebude mít vstupní jedno nebo dvě smyčky z pokračovat for bloku. Všimněte si, že by byly třeba můžete procházet všechny 1000 iterací dlouhou dobu.
Nastavení podmíněného zarážky. V levém oddělovací mezery u okna kódu, klikněte pravým tlačítkem myši na řádku x += i; a poté zvolte možnost stavu. Zvolte stavu zaškrtnutí políčka a poté zadejte i == 500; do textového pole. Zvolte platí a vyberte OK. Zarážky slouží ke kontrole hodnoty na 500th opakování for cyklu.
Podmíněné zarážky ikonu lze identifikovat podle jeho bílá cross.
Spuštěny za účelem zarážky. V nabídce Debug zvolte pokračovat (klávesnice: F5). V okně Locals potvrdit, že aktuální hodnota i je 500. Všimněte si, že proměnné s je vyjádřena jako jeden řádek a je mnohem delší než okno.
Visual proměnná řetězce. Klikněte na ikonu lupy v hodnotu sloupec s.
Otevře se okno Text Visualizer a hodnota řetězce, je zobrazen jako řetězec více řádků.
Spustit ke kurzoru. Klikněte pravým tlačítkem myši na řádku methodTrack += "->Example3"; a poté zvolte možnost Run to Cursor (klávesnice: Přesuňte kurzor do řádku; CTRL + F10). Ladicí program dokončí iterací smyčky a následně pozastaví provádění kódu na řádku.
Ukončit ladění. V nabídce ladění, zvolte možnost Zastavit ladění (klávesnice: Shift + F5). Dojde k ukončení ladicí relace.
Upravit a pokračovat, odstranění výjimky
V některých případech až rozdělit kódu v ladicí program sady Visual Studio budete mít možnost ke změně hodnot proměnných a dokonce i logics příkazů. Tato funkce je volána, upravit a pokračovat.
Upravit a pokračovat může být zvlášť užitečné, když rozdělíte na výjimku. Aniž by museli zastavit a znovu spustit ladění proceduru dlouhé a účastníky a vyhnout se tak výjimku, můžete "odvíjejí" výjimka k provádění přesunout do bodu bezprostředně před k výjimce došlo a poté změňte problematické proměnnou nebo prohlášení a pokračovat s aktuální relaci ladění ve stavu, který nevyvolá výjimku.
I když můžete použít upravit a pokračovat v celé řadě situací, je obtížné uvádět, protože podmínky, závisí na programovací jazyk, aktuální stav programu zásobníku a schopnost ladicí program ke změně stavu bez poškození proces konkrétní podmínky, které nejsou podporují upravit a pokračovat. Nejlepší způsob, jak určit, zda je podporován o změnu úpravy má jen zkuste ladicí program umožňuje okamžitě vědět, pokud tato změna není podporován.
Příklad 4:
V tomto příkladu spustit ladicí program k výjimce, vzad výjimku, opravte logiku metody a poté změňte hodnotu proměnné, aby mohl pokračovat provedení metody.
Volat metodu Example4 v konstruktoru MainPage. Upravit konstruktoru MainPage() a nahraďte následující řádek methodTrack = String.Empty; s řádkem Example4();.
Spustit k výjimce. Začněte volbou ladicí relaci Spustit ladění na ladění nabídky (klávesnice: F5). Stisknutím klávesy F5 Obnovit provádění. Ladicí program pozastaví provádění kódu při výjimce v metodě Example4 a zobrazí se dialogové okno výjimky.
Změnit program logiku. Je zřejmé, že je chybu v if Podmínka: hodnota x by mělo být změněno při x rovná 0, nikoli při x není rovno nule. Zvolte Rozdělit Chcete-li opravit logika metody. Při pokusu upravit řádek, zobrazí se dialogové okno jiného.
Zvolte Upravit a poté změňte řádku if (x != 0) k if (x == 0). Ladicí program trvá změny logiku program ke zdrojovému souboru.
Změnit hodnotu proměnné. Zkontrolujte hodnotu x v popisu dat nebo v okně Locals. Je stále 0 (nula). Při pokusu o spuštění příkazu, který způsobil původní výjimka ji pouze vyvolají akci. Můžete změnit hodnotu x. V okně Locals klikněte dvakrát hodnotu sloupec x řádku. Změníte hodnotu od 0 do 1.
Zvolte klávesy F11 Krokovat s vnořením příkaz, který dříve došlo k výjimce. Všimněte si, že provede řádku bez chyby. Zvolte F11 znovu.
Ukončit ladění. Na ladění nabídce zvolte Zastavit ladění (klávesnice: Shift + F5). Dojde k ukončení ladicí relace.
Viz také
Koncepty
Spuštění relace ladění (Visual C++, Visual C# a Visual Basic)