Oktatóanyag: .NET-konzolalkalmazás hibakeresése a Visual Studio Code használatával

Ez az oktatóanyag bemutatja a Visual Studio Code-ban elérhető hibakeresési eszközöket a .NET-alkalmazások használatához.

Előfeltételek

Hibakeresési buildkonfiguráció használata

A hibakeresés és a kiadás a következő: . A NET beépített buildkonfigurációi. A hibakeresési buildkonfigurációt a hibakereséshez és a végleges kiadási disztribúció kiadási konfigurációját használja.

A hibakeresési konfigurációban a program teljes szimbolikus hibakeresési információkkal és optimalizálás nélkül fordít. Az optimalizálás bonyolítja a hibakeresést, mivel a forráskód és a létrehozott utasítások közötti kapcsolat összetettebb. A program kiadási konfigurációja nem tartalmaz szimbolikus hibakeresési információkat, és teljes mértékben optimalizálva van.

A Visual Studio Code indítási beállításai alapértelmezés szerint a hibakeresési buildkonfigurációt használják, így a hibakeresés előtt nem kell módosítania.

  1. Indítsa el a Visual Studio Code-ot.

  2. Nyissa meg annak a projektnek a mappáját, amelyet a Visual Studio Code használatával létrehozott egy .NET-konzolalkalmazás létrehozása során.

Töréspont beállítása

A töréspont ideiglenesen megszakítja az alkalmazás végrehajtását, mielőtt a töréspontot tartalmazó sor lefutna.

  1. Nyissa meg a Program.cs fájlt.

  2. Állítson be egy töréspontot a sorban, amely megjeleníti a nevet, a dátumot és az időt a kódablak bal margójára kattintva. A bal margó a vonalszámoktól balra található. A töréspontok beállításának egyéb módjai az F9 billentyű lenyomásával vagy a kódsor kijelölésekor a menüben a Run Toggle Breakpoint (Töréspont futtatása>) lehetőség választásával.

    A Visual Studio Code a töréspont beállításának vonalát jelzi egy piros ponttal a bal margón.

    Breakpoint set

Terminálbemenet beállítása

A töréspont metódushívás Console.ReadLine után található. A hibakeresési konzol nem fogadja el a futó programok terminálbemenetét. A terminál bemenetének hibakeresés közbeni kezeléséhez használhatja az integrált terminált (a Visual Studio Code egyik ablakát) vagy egy külső terminált. Ebben az oktatóanyagban az integrált terminált használja.

  1. A projektmappa . vscode mappát tartalmaz. Nyissa meg a .vscode mappában található launch.json fájlt.

  2. A launch.json fájlban módosítsa a beállítást a console következőre internalConsoleintegratedTerminal:

    "console": "integratedTerminal",
    
  3. Mentse a módosításokat.

Hibakeresés indítása

  1. Nyissa meg a Hibakeresés nézetet a bal oldali menü Hibakeresés ikonjának kiválasztásával.

    Open the Debug tab in Visual Studio Code

  2. A panel tetején, a .NET Core Launch (konzol) mellett válassza a zöld nyílbillentyűt. A program hibakeresési módban való indításának egyéb módjai az F5 billentyű lenyomásával vagy a Hibakeresés indítása a menüből való kiválasztásával>.

    Start debugging

  3. Válassza a Terminál fület a "Mi a neve?" üzenet megjelenítéséhez, amelyet a program a válaszra való várakozás előtt jelenít meg.

    Select the Terminal tab

  4. Adjon meg egy sztringet a terminálablakban , válaszul a név megadására, majd nyomja le az Enter billentyűt.

    A program végrehajtása leáll, amikor eléri a töréspontot és a Console.WriteLine metódus futtatása előtt. A Változók ablak Helyiek szakasza az aktuálisan futó metódusban definiált változók értékeit jeleníti meg.

    Breakpoint hit, showing Locals

A hibakeresési konzol használata

A Hibakeresési konzol ablak lehetővé teszi a hibakeresési alkalmazás használatát. Módosíthatja a változók értékét, hogy lássa, hogyan befolyásolja a programját.

  1. Válassza a Hibakeresési konzol lapot.

  2. Írja be name = "Gracie" a hibakeresési konzol ablakának alján található parancssorba, és nyomja le az Enter billentyűt.

    Change variable values

  3. Írja be currentDate = DateTime.Parse("2019-11-16T17:25:00Z").ToUniversalTime() a Hibakeresési konzol ablakának alján, és nyomja le az Enter billentyűt.

    A Változók ablak megjeleníti a változók és currentDate a name változók új értékeit.

  4. A program végrehajtásának folytatásához kattintson az eszköztár Folytatás gombjára. A folytatás másik módja az F5 billentyű lenyomása.

    Continue debugging

  5. Kattintson ismét a Terminál fülre.

    A konzolablakban megjelenített értékek megfelelnek a hibakeresési konzolon végrehajtott módosításoknak.

    Terminal showing the entered values

  6. Nyomja le bármelyik billentyűt az alkalmazásból való kilépéshez és a hibakeresés leállításához.

Feltételes töréspont beállítása

A program megjeleníti a felhasználó által beírt sztringet. Mi történik, ha a felhasználó nem ad meg semmit? Ezt egy feltételes töréspontnak nevezett hasznos hibakeresési funkcióval tesztelheti.

  1. Kattintson a jobb gombbal (ctrl billentyűt lenyomva a macOS-en) a töréspontot jelképező piros pontra. A helyi menüben válassza a Töréspont szerkesztése lehetőséget egy olyan párbeszédpanel megnyitásához, amely lehetővé teszi egy feltételes kifejezés megadását.

    Breakpoint context menu

  2. Válassza ki Expression a legördülő menüt, írja be a következő feltételes kifejezést, és nyomja le az Enter billentyűt.

    String.IsNullOrEmpty(name)
    

    Enter a conditional expression

    A töréspont minden egyes találatakor a hibakereső meghívja a String.IsNullOrEmpty(name) metódust, és csak akkor törik meg ezen a sorban, ha a metódushívás visszatér true.

    Feltételes kifejezés helyett megadhat egy találatszámot, amely megszakítja a program végrehajtását, mielőtt egy utasítás meghatározott számú alkalommal lefutna. Egy másik lehetőség egy szűrőfeltétel megadása, amely megszakítja a program végrehajtását olyan attribútumok alapján, mint a szálazonosító, a folyamat neve vagy a szál neve.

  3. Indítsa el a programot hibakereséssel az F5 billentyű lenyomásával.

  4. A Terminál lapon nyomja le az Enter billentyűt, amikor a rendszer kéri, hogy adja meg a nevét.

    Mivel a megadott (name vagy nullString.Empty) feltétel teljesült, a program végrehajtása leáll, amikor eléri a töréspontot, és a Console.WriteLine metódus futtatása előtt.

    A Változók ablak azt mutatja, hogy a name változó ""értéke vagy String.Empty.

  5. Győződjön meg arról, hogy az érték egy üres sztring. Ehhez írja be a következő utasítást a Hibakeresési konzol parancssorába, és nyomja le az Enter billentyűt. Az eredmény: true.

    name == String.Empty
    
  6. A program végrehajtásának folytatásához kattintson az eszköztár Folytatás gombjára.

  7. Válassza a Terminál fület, és nyomja le bármelyik billentyűt a programból való kilépéshez és a hibakeresés leállításához.

  8. Törölje a töréspontot a kódablak bal margóján lévő pontra kattintva. A töréspontok törlésének további módjai az F9 billentyű lenyomásával vagy a kódsor kijelölésekor a menüben a Run Toggle Breakpoint (Töréspont futtatása>) lehetőség választásával.

  9. Ha figyelmeztetést kap arról, hogy a töréspont állapota elveszik, válassza a Töréspont eltávolítása lehetőséget.

Lépés egy programon

A Visual Studio Code lehetővé teszi, hogy sorról sorra haladjon végig egy programon, és figyelje annak végrehajtását. Általában be kell állítania egy töréspontot, és követnie kell a programfolyamatot a programkód egy kis részén. Mivel ez a program kicsi, végiglépkedhet a teljes programon.

  1. Állítson be egy töréspontot a metódus nyitó kapcsos zárójelén Main .

  2. Nyomja le az F5 billentyűt a hibakeresés megkezdéséhez.

    A Visual Studio Code kiemeli a töréspontvonalat.

    Ekkor a Változók ablak azt mutatja, hogy a args tömb üres, és namecurrentDate alapértelmezett értékekkel rendelkezik.

  3. Válassza a Lépés befuttatása> vagy az F11 billentyű lenyomásával lehetőséget.

    Step-Into button

    A Visual Studio Code kiemeli a következő sort.

  4. Válassza a Lépés befuttatása> vagy az F11 billentyű lenyomásával lehetőséget.

    A Visual Studio Code futtatja a Console.WriteLine névkérést, és kiemeli a következő végrehajtási sort. A következő sor a Console.ReadLinename. A Változók ablak változatlan, a Terminál lapon pedig a "Mi a neve?" kérdés jelenik meg.

  5. Válassza a Lépés befuttatása> vagy az F11 billentyű lenyomásával lehetőséget.

    A Visual Studio kiemeli a változó-hozzárendelést name . A Változók ablak azt mutatja, hogy name még mindig null.

  6. Válaszoljon a kérdésre egy sztring beírásával a Terminál lapon, majd nyomja le az Enter billentyűt.

    Előfordulhat , hogy a Terminál lapon nem jelenik meg a beírandó sztring, de a Console.ReadLine metódus rögzíti a bemenetet.

  7. Válassza a Lépés befuttatása> vagy az F11 billentyű lenyomásával lehetőséget.

    A Visual Studio Code kiemeli a változó-hozzárendelést currentDate . A Változók ablak a metódus hívása által visszaadott értéket jeleníti meg Console.ReadLine . A Terminál lapon megjelenik a parancssorban megadott sztring.

  8. Válassza a Lépés befuttatása> vagy az F11 billentyű lenyomásával lehetőséget.

    A Változók ablak a tulajdonság hozzárendelése currentDate után a változó értékét jeleníti meg DateTime.Now .

  9. Válassza a Lépés befuttatása> vagy az F11 billentyű lenyomásával lehetőséget.

    A Visual Studio Code meghívja a metódust Console.WriteLine(String, Object, Object) . A konzolablakban megjelenik a formázott sztring.

  10. Válassza a Kifuttatás parancsot>, vagy nyomja le a Shift+F11 billentyűkombinációt.

    Step-Out button

  11. Válassza a Terminál fület.

    A terminálon megjelenik a "Bármely billentyű lenyomása a kilépéshez..."

  12. Nyomja le bármelyik billentyűt a programból való kilépéshez.

Kiadás buildkonfigurációjának használata

Miután tesztelte az alkalmazás hibakeresési verzióját, a kiadás verzióját is le kell fordítania és tesztelnie. A kiadási verzió olyan fordítóoptimalizálásokat tartalmaz, amelyek befolyásolhatják az alkalmazások viselkedését. A teljesítmény javítására tervezett fordítóoptimalizálások például versenyfeltételeket hozhatnak létre többszálú alkalmazásokban.

A konzolalkalmazás kiadási verziójának létrehozásához és teszteléséhez nyissa meg a terminált, és futtassa a következő parancsot:

dotnet run --configuration Release

További források

További lépések

Ebben az oktatóanyagban Visual Studio Code hibakeresési eszközöket használt. A következő oktatóanyagban közzéteszi az alkalmazás üzembe helyezhető verzióját.

Ez az oktatóanyag bemutatja a Visual Studio Code-ban elérhető hibakeresési eszközöket a .NET-alkalmazások használatához.

Előfeltételek

Hibakeresési buildkonfiguráció használata

A hibakeresés és a kiadás a következő: . A NET beépített buildkonfigurációi. A hibakeresési buildkonfigurációt a hibakereséshez és a végleges kiadási disztribúció kiadási konfigurációját használja.

A hibakeresési konfigurációban a program teljes szimbolikus hibakeresési információkkal és optimalizálás nélkül fordít. Az optimalizálás bonyolítja a hibakeresést, mivel a forráskód és a létrehozott utasítások közötti kapcsolat összetettebb. A program kiadási konfigurációja nem tartalmaz szimbolikus hibakeresési információkat, és teljes mértékben optimalizálva van.

A Visual Studio Code indítási beállításai alapértelmezés szerint a hibakeresési buildkonfigurációt használják, így a hibakeresés előtt nem kell módosítania.

  1. Indítsa el a Visual Studio Code-ot.

  2. Nyissa meg annak a projektnek a mappáját, amelyet a Visual Studio Code használatával létrehozott egy .NET-konzolalkalmazás létrehozása során.

Töréspont beállítása

A töréspont ideiglenesen megszakítja az alkalmazás végrehajtását, mielőtt a töréspontot tartalmazó sor lefutna.

  1. Nyissa meg a Program.cs fájlt.

  2. Állítson be egy töréspontot a sorban, amely megjeleníti a nevet, a dátumot és az időt a kódablak bal margójára kattintva. A bal margó a vonalszámoktól balra található. A töréspontok beállításának egyéb módjai az F9 billentyű lenyomásával vagy a kódsor kijelölésekor a menüben a Run Toggle Breakpoint (Töréspont futtatása>) lehetőség választásával.

    A Visual Studio Code a töréspont beállításának vonalát jelzi egy piros ponttal a bal margón.

    Breakpoint set

Terminálbemenet beállítása

A töréspont metódushívás Console.ReadLine után található. A hibakeresési konzol nem fogadja el a futó programok terminálbemenetét. A terminál bemenetének hibakeresés közbeni kezeléséhez használhatja az integrált terminált (a Visual Studio Code egyik ablakát) vagy egy külső terminált. Ebben az oktatóanyagban az integrált terminált használja.

  1. A projektmappa . vscode mappát tartalmaz. Nyissa meg a .vscode mappában található launch.json fájlt.

  2. A launch.json fájlban módosítsa a beállítást a console következőre internalConsoleintegratedTerminal:

    "console": "integratedTerminal",
    
  3. Mentse a módosításokat.

Hibakeresés indítása

  1. Nyissa meg a Hibakeresés nézetet a bal oldali menü Hibakeresés ikonjának kiválasztásával.

    Open the Debug tab in Visual Studio Code

  2. A panel tetején, a .NET Core Launch (konzol) mellett válassza a zöld nyílbillentyűt. A program hibakeresési módban való indításának egyéb módjai az F5 billentyű lenyomásával vagy a Hibakeresés indítása a menüből való kiválasztásával>.

    Start debugging

  3. Válassza a Terminál fület a "Mi a neve?" üzenet megjelenítéséhez, amelyet a program a válaszra való várakozás előtt jelenít meg.

    Select the Terminal tab

  4. Adjon meg egy sztringet a terminálablakban , válaszul a név megadására, majd nyomja le az Enter billentyűt.

    A program végrehajtása leáll, amikor eléri a töréspontot és a Console.WriteLine metódus futtatása előtt. A Változók ablak Helyiek szakasza az aktuálisan futó metódusban definiált változók értékeit jeleníti meg.

    Breakpoint hit, showing Locals

A hibakeresési konzol használata

A Hibakeresési konzol ablak lehetővé teszi a hibakeresési alkalmazás használatát. Módosíthatja a változók értékét, hogy lássa, hogyan befolyásolja a programját.

  1. Válassza a Hibakeresési konzol lapot.

  2. Írja be name = "Gracie" a hibakeresési konzol ablakának alján található parancssorba, és nyomja le az Enter billentyűt.

    Change variable values

  3. Írja be currentDate = DateTime.Parse("2019-11-16T17:25:00Z").ToUniversalTime() a Hibakeresési konzol ablakának alján, és nyomja le az Enter billentyűt.

    A Változók ablak megjeleníti a változók és currentDate a name változók új értékeit.

  4. A program végrehajtásának folytatásához kattintson az eszköztár Folytatás gombjára. A folytatás másik módja az F5 billentyű lenyomása.

    Continue debugging

  5. Kattintson ismét a Terminál fülre.

    A konzolablakban megjelenített értékek megfelelnek a hibakeresési konzolon végrehajtott módosításoknak.

    Terminal showing the entered values

  6. Nyomja le bármelyik billentyűt az alkalmazásból való kilépéshez és a hibakeresés leállításához.

Feltételes töréspont beállítása

A program megjeleníti a felhasználó által beírt sztringet. Mi történik, ha a felhasználó nem ad meg semmit? Ezt egy feltételes töréspontnak nevezett hasznos hibakeresési funkcióval tesztelheti.

  1. Kattintson a jobb gombbal (ctrl billentyűt lenyomva a macOS-en) a töréspontot jelképező piros pontra. A helyi menüben válassza a Töréspont szerkesztése lehetőséget egy olyan párbeszédpanel megnyitásához, amely lehetővé teszi egy feltételes kifejezés megadását.

    Breakpoint context menu

  2. Válassza ki Expression a legördülő menüt, írja be a következő feltételes kifejezést, és nyomja le az Enter billentyűt.

    String.IsNullOrEmpty(name)
    

    Enter a conditional expression

    A töréspont minden egyes találatakor a hibakereső meghívja a String.IsNullOrEmpty(name) metódust, és csak akkor törik meg ezen a sorban, ha a metódushívás visszatér true.

    Feltételes kifejezés helyett megadhat egy találatszámot, amely megszakítja a program végrehajtását, mielőtt egy utasítás meghatározott számú alkalommal lefutna. Egy másik lehetőség egy szűrőfeltétel megadása, amely megszakítja a program végrehajtását olyan attribútumok alapján, mint a szálazonosító, a folyamat neve vagy a szál neve.

  3. Indítsa el a programot hibakereséssel az F5 billentyű lenyomásával.

  4. A Terminál lapon nyomja le az Enter billentyűt, amikor a rendszer kéri, hogy adja meg a nevét.

    Mivel a megadott (name vagy nullString.Empty) feltétel teljesült, a program végrehajtása leáll, amikor eléri a töréspontot, és a Console.WriteLine metódus futtatása előtt.

    A Változók ablak azt mutatja, hogy a name változó ""értéke vagy String.Empty.

  5. Győződjön meg arról, hogy az érték egy üres sztring. Ehhez írja be a következő utasítást a Hibakeresési konzol parancssorába, és nyomja le az Enter billentyűt. Az eredmény: true.

    name == String.Empty
    
  6. A program végrehajtásának folytatásához kattintson az eszköztár Folytatás gombjára.

  7. Válassza a Terminál fület, és nyomja le bármelyik billentyűt a programból való kilépéshez és a hibakeresés leállításához.

  8. Törölje a töréspontot a kódablak bal margóján lévő pontra kattintva. A töréspontok törlésének további módjai az F9 billentyű lenyomásával vagy a kódsor kijelölésekor a menüben a Run Toggle Breakpoint (Töréspont futtatása>) lehetőség választásával.

  9. Ha figyelmeztetést kap arról, hogy a töréspont állapota elveszik, válassza a Töréspont eltávolítása lehetőséget.

Lépés egy programon

A Visual Studio Code lehetővé teszi, hogy sorról sorra haladjon végig egy programon, és figyelje annak végrehajtását. Általában be kell állítania egy töréspontot, és követnie kell a programfolyamatot a programkód egy kis részén. Mivel ez a program kicsi, végiglépkedhet a teljes programon.

  1. Állítson be egy töréspontot a metódus nyitó kapcsos zárójelén Main .

  2. Nyomja le az F5 billentyűt a hibakeresés megkezdéséhez.

    A Visual Studio Code kiemeli a töréspontvonalat.

    Ekkor a Változók ablak azt mutatja, hogy a args tömb üres, és namecurrentDate alapértelmezett értékekkel rendelkezik.

  3. Válassza a Lépés befuttatása> vagy az F11 billentyű lenyomásával lehetőséget.

    Step-Into button

    A Visual Studio Code kiemeli a következő sort.

  4. Válassza a Lépés befuttatása> vagy az F11 billentyű lenyomásával lehetőséget.

    A Visual Studio Code futtatja a Console.WriteLine névkérést, és kiemeli a következő végrehajtási sort. A következő sor a Console.ReadLinename. A Változók ablak változatlan, a Terminál lapon pedig a "Mi a neve?" kérdés jelenik meg.

  5. Válassza a Lépés befuttatása> vagy az F11 billentyű lenyomásával lehetőséget.

    A Visual Studio kiemeli a változó-hozzárendelést name . A Változók ablak azt mutatja, hogy name még mindig null.

  6. Válaszoljon a kérdésre egy sztring beírásával a Terminál lapon, majd nyomja le az Enter billentyűt.

    Előfordulhat , hogy a Terminál lapon nem jelenik meg a beírandó sztring, de a Console.ReadLine metódus rögzíti a bemenetet.

  7. Válassza a Lépés befuttatása> vagy az F11 billentyű lenyomásával lehetőséget.

    A Visual Studio Code kiemeli a változó-hozzárendelést currentDate . A Változók ablak a metódus hívása által visszaadott értéket jeleníti meg Console.ReadLine . A Terminál lapon megjelenik a parancssorban megadott sztring.

  8. Válassza a Lépés befuttatása> vagy az F11 billentyű lenyomásával lehetőséget.

    A Változók ablak a tulajdonság hozzárendelése currentDate után a változó értékét jeleníti meg DateTime.Now .

  9. Válassza a Lépés befuttatása> vagy az F11 billentyű lenyomásával lehetőséget.

    A Visual Studio Code meghívja a metódust Console.WriteLine(String, Object, Object) . A konzolablakban megjelenik a formázott sztring.

  10. Válassza a Kifuttatás parancsot>, vagy nyomja le a Shift+F11 billentyűkombinációt.

    Step-Out button

  11. Válassza a Terminál fület.

    A terminálon megjelenik a "Bármely billentyű lenyomása a kilépéshez..."

  12. Nyomja le bármelyik billentyűt a programból való kilépéshez.

Kiadás buildkonfigurációjának használata

Miután tesztelte az alkalmazás hibakeresési verzióját, a kiadás verzióját is le kell fordítania és tesztelnie. A kiadási verzió olyan fordítóoptimalizálásokat tartalmaz, amelyek befolyásolhatják az alkalmazások viselkedését. A teljesítmény javítására tervezett fordítóoptimalizálások például versenyfeltételeket hozhatnak létre többszálú alkalmazásokban.

A konzolalkalmazás kiadási verziójának létrehozásához és teszteléséhez nyissa meg a terminált, és futtassa a következő parancsot:

dotnet run --configuration Release

További források

További lépések

Ebben az oktatóanyagban Visual Studio Code hibakeresési eszközöket használt. A következő oktatóanyagban közzéteszi az alkalmazás üzembe helyezhető verzióját.

Ez az oktatóanyag bemutatja a Visual Studio Code-ban elérhető hibakeresési eszközöket a .NET-alkalmazások használatához.

Előfeltételek

Hibakeresési buildkonfiguráció használata

A hibakeresés és a kiadás a következő: . A NET beépített buildkonfigurációi. A hibakeresési buildkonfigurációt a hibakereséshez és a végleges kiadási disztribúció kiadási konfigurációját használja.

A hibakeresési konfigurációban a program teljes szimbolikus hibakeresési információkkal és optimalizálás nélkül fordít. Az optimalizálás bonyolítja a hibakeresést, mivel a forráskód és a létrehozott utasítások közötti kapcsolat összetettebb. A program kiadási konfigurációja nem tartalmaz szimbolikus hibakeresési információkat, és teljes mértékben optimalizálva van.

A Visual Studio Code indítási beállításai alapértelmezés szerint a hibakeresési buildkonfigurációt használják, így a hibakeresés előtt nem kell módosítania.

  1. Indítsa el a Visual Studio Code-ot.

  2. Nyissa meg annak a projektnek a mappáját, amelyet a Visual Studio Code használatával létrehozott egy .NET-konzolalkalmazás létrehozása során.

Töréspont beállítása

A töréspont ideiglenesen megszakítja az alkalmazás végrehajtását, mielőtt a töréspontot tartalmazó sor lefutna.

  1. Nyissa meg a Program.cs fájlt.

  2. Állítson be egy töréspontot a sorban, amely megjeleníti a nevet, a dátumot és az időt a kódablak bal margójára kattintva. A bal margó a vonalszámoktól balra található. A töréspontok beállításának egyéb módjai az F9 billentyű lenyomásával vagy a kódsor kijelölésekor a menüben a Run Toggle Breakpoint (Töréspont futtatása>) lehetőség választásával.

    A Visual Studio Code a töréspont beállításának vonalát jelzi egy piros ponttal a bal margón.

    Breakpoint set

Terminálbemenet beállítása

A töréspont metódushívás Console.ReadLine után található. A hibakeresési konzol nem fogadja el a futó programok terminálbemenetét. A terminál bemenetének hibakeresés közbeni kezeléséhez használhatja az integrált terminált (a Visual Studio Code egyik ablakát) vagy egy külső terminált. Ebben az oktatóanyagban az integrált terminált használja.

  1. Nyissa meg a .vscode/launch.json fájlt.

  2. Módosítsa a beállítást a console következőre internalConsoleintegratedTerminal:

    "console": "integratedTerminal",
    
  3. Mentse a módosításokat.

Hibakeresés indítása

  1. Nyissa meg a Hibakeresés nézetet a bal oldali menü Hibakeresés ikonjának kiválasztásával.

    Open the Debug tab in Visual Studio Code

  2. A panel tetején, a .NET Core Launch (konzol) mellett válassza a zöld nyílbillentyűt. A program hibakeresési módban való indításának egyéb módjai az F5 billentyű lenyomásával vagy a Hibakeresés indítása a menüből való kiválasztásával>.

    Start debugging

  3. Válassza a Terminál fület a "Mi a neve?" üzenet megjelenítéséhez, amelyet a program a válaszra való várakozás előtt jelenít meg.

    Select the Terminal tab

  4. Adjon meg egy sztringet a terminálablakban , válaszul a név megadására, majd nyomja le az Enter billentyűt.

    A program végrehajtása leáll, amikor eléri a töréspontot és a Console.WriteLine metódus futtatása előtt. A Változók ablak Helyiek szakasza az aktuálisan futó metódusban definiált változók értékeit jeleníti meg.

    Breakpoint hit, showing Locals

A hibakeresési konzol használata

A Hibakeresési konzol ablak lehetővé teszi a hibakeresési alkalmazás használatát. Módosíthatja a változók értékét, hogy lássa, hogyan befolyásolja a programját.

  1. Válassza a Hibakeresési konzol lapot.

  2. Írja be name = "Gracie" a hibakeresési konzol ablakának alján található parancssorba, és nyomja le az Enter billentyűt.

    Change variable values

  3. Írja be currentDate = DateTime.Parse("2019-11-16T17:25:00Z").ToUniversalTime() a Hibakeresési konzol ablakának alján, és nyomja le az Enter billentyűt.

    A Változók ablak megjeleníti a változók és currentDate a name változók új értékeit.

  4. A program végrehajtásának folytatásához kattintson az eszköztár Folytatás gombjára. A folytatás másik módja az F5 billentyű lenyomása.

    Continue debugging

  5. Kattintson ismét a Terminál fülre.

    A konzolablakban megjelenített értékek megfelelnek a hibakeresési konzolon végrehajtott módosításoknak.

    Terminal showing the entered values

  6. Nyomja le bármelyik billentyűt az alkalmazásból való kilépéshez és a hibakeresés leállításához.

Feltételes töréspont beállítása

A program megjeleníti a felhasználó által beírt sztringet. Mi történik, ha a felhasználó nem ad meg semmit? Ezt egy feltételes töréspontnak nevezett hasznos hibakeresési funkcióval tesztelheti.

  1. Kattintson a jobb gombbal (ctrl billentyűt lenyomva a macOS-en) a töréspontot jelképező piros pontra. A helyi menüben válassza a Töréspont szerkesztése lehetőséget egy olyan párbeszédpanel megnyitásához, amely lehetővé teszi egy feltételes kifejezés megadását.

    Breakpoint context menu

  2. Válassza ki Expression a legördülő menüt, írja be a következő feltételes kifejezést, és nyomja le az Enter billentyűt.

    String.IsNullOrEmpty(name)
    

    Enter a conditional expression

    A töréspont minden egyes találatakor a hibakereső meghívja a String.IsNullOrEmpty(name) metódust, és csak akkor törik meg ezen a sorban, ha a metódushívás visszatér true.

    Feltételes kifejezés helyett megadhat egy találatszámot, amely megszakítja a program végrehajtását, mielőtt egy utasítás meghatározott számú alkalommal lefutna. Egy másik lehetőség egy szűrőfeltétel megadása, amely megszakítja a program végrehajtását olyan attribútumok alapján, mint a szálazonosító, a folyamat neve vagy a szál neve.

  3. Indítsa el a programot hibakereséssel az F5 billentyű lenyomásával.

  4. A Terminál lapon nyomja le az Enter billentyűt, amikor a rendszer kéri, hogy adja meg a nevét.

    Mivel a megadott (name vagy nullString.Empty) feltétel teljesült, a program végrehajtása leáll, amikor eléri a töréspontot, és a Console.WriteLine metódus futtatása előtt.

    A Változók ablak azt mutatja, hogy a name változó ""értéke vagy String.Empty.

  5. Győződjön meg arról, hogy az érték egy üres sztring. Ehhez írja be a következő utasítást a Hibakeresési konzol parancssorába, és nyomja le az Enter billentyűt. Az eredmény: true.

    name == String.Empty
    
  6. A program végrehajtásának folytatásához kattintson az eszköztár Folytatás gombjára.

  7. Válassza a Terminál fület, és nyomja le bármelyik billentyűt a programból való kilépéshez és a hibakeresés leállításához.

  8. Törölje a töréspontot a kódablak bal margóján lévő pontra kattintva. A töréspontok törlésének további módjai az F9 billentyű lenyomásával vagy a kódsor kijelölésekor a menüben a Run Toggle Breakpoint (Töréspont futtatása>) lehetőség választásával.

  9. Ha figyelmeztetést kap arról, hogy a töréspont állapota elveszik, válassza a Töréspont eltávolítása lehetőséget.

Lépés egy programon

A Visual Studio Code lehetővé teszi, hogy sorról sorra haladjon végig egy programon, és figyelje annak végrehajtását. Általában be kell állítania egy töréspontot, és követnie kell a programfolyamatot a programkód egy kis részén. Mivel ez a program kicsi, végiglépkedhet a teljes programon.

  1. Állítson be egy töréspontot a metódus nyitó kapcsos zárójelén Main .

  2. Nyomja le az F5 billentyűt a hibakeresés megkezdéséhez.

    A Visual Studio Code kiemeli a töréspontvonalat.

    Ekkor a Változók ablak azt mutatja, hogy a args tömb üres, és namecurrentDate alapértelmezett értékekkel rendelkezik.

  3. Válassza a Lépés befuttatása> vagy az F11 billentyű lenyomásával lehetőséget.

    Step-Into button

    A Visual Studio Code kiemeli a következő sort.

  4. Válassza a Lépés befuttatása> vagy az F11 billentyű lenyomásával lehetőséget.

    A Visual Studio Code futtatja a Console.WriteLine névkérést, és kiemeli a következő végrehajtási sort. A következő sor a Console.ReadLinename. A Változók ablak változatlan, a Terminál lapon pedig a "Mi a neve?" kérdés jelenik meg.

  5. Válassza a Lépés befuttatása> vagy az F11 billentyű lenyomásával lehetőséget.

    A Visual Studio kiemeli a változó-hozzárendelést name . A Változók ablak ki van ürítve.

  6. Válaszoljon a kérdésre egy sztring beírásával a Terminál lapon, majd nyomja le az Enter billentyűt.

    Előfordulhat , hogy a Terminál lapon nem jelenik meg a beírandó sztring, de a Console.ReadLine metódus rögzíti a bemenetet.

    A Változók ablak a metódus hívása által visszaadott értéket jeleníti meg Console.ReadLine .

  7. Válassza a Lépés befuttatása> vagy az F11 billentyű lenyomásával lehetőséget.

    A Visual Studio Code kiemeli a változó-hozzárendelést currentDate . A Terminál lapon megjelenik a parancssorban megadott sztring.

  8. Válassza a Lépés befuttatása> vagy az F11 billentyű lenyomásával lehetőséget.

    A Változók ablak a tulajdonság hozzárendelése currentDate után a változó értékét jeleníti meg DateTime.Now .

  9. Válassza a Lépés befuttatása> vagy az F11 billentyű lenyomásával lehetőséget.

    A Visual Studio Code meghívja a metódust Console.WriteLine(String, Object, Object) . A konzolablakban megjelenik a formázott sztring.

  10. Válassza a Kifuttatás parancsot>, vagy nyomja le a Shift+F11 billentyűkombinációt.

    Step-Out button

  11. Válassza a Terminál fület.

    A terminálon megjelenik a "Bármely billentyű lenyomása a kilépéshez..."

  12. Nyomja le bármelyik billentyűt a programból való kilépéshez.

Kiadás buildkonfigurációjának használata

Miután tesztelte az alkalmazás hibakeresési verzióját, a kiadás verzióját is le kell fordítania és tesztelnie. A kiadási verzió olyan fordítóoptimalizálásokat tartalmaz, amelyek befolyásolhatják az alkalmazások viselkedését. A teljesítmény javítására tervezett fordítóoptimalizálások például versenyfeltételeket hozhatnak létre többszálú alkalmazásokban.

A konzolalkalmazás kiadási verziójának létrehozásához és teszteléséhez nyissa meg a terminált, és futtassa a következő parancsot:

dotnet run --configuration Release

További források

További lépések

Ebben az oktatóanyagban Visual Studio Code hibakeresési eszközöket használt. A következő oktatóanyagban közzéteszi az alkalmazás üzembe helyezhető verzióját.