Harjoitus – Suorita koodi virheenkorjausympäristössä

Valmis

Visual Studio Code -käyttöliittymän avulla kehittäjät voivat suorittaa koodinsa virheenkorjausympäristössä. Virheenkorjauksen tuen tarjoavat laajennukset, ja C#-kehittäjille virheenkorjauksen tukea tarjoaa sama laajennus, joka tarjoaa tuen koodikehitykselle ja IntelliSenselle.

Virheenkorjauksen ja sovelluksen vuorovaikutus

Koodin virheenkorjauksen avulla voidaan keskeyttää ja jatkaa koodin suorittamista, tarkastella muuttujan tilaa ja jopa muuttaa muuttujille määritettyjä arvoja suorituksen aikana. Saatat ihmetellä, miten virheenkorjaustoiminto voi hallita ja muokata käynnissä olevaa sovellusta? Lyhyeksi vastaukseksi virheenkorjaustoiminto voi käyttää sovelluksen suorituspalveluympäristöä ja suoritettavaa koodia.

Huomautus

Virheenkorjauksen käsittely suorituspalveluympäristössä on edistynyt aihe. Lisäksi virheenkorjauksen toiminnan ymmärtäminen taustalla ei ole virheenkorjauksen käytön vaatimus. Seuraava kuvaus voi kuitenkin tyydyttää uteliaisuutesi.

Visual Studio Code Debugger C#:lle käyttää .NET-ajonaikaista sovellusta käynnistääkseen ja ollakseen vuorovaikutuksessa sovelluksen kanssa. Kun käynnistät virheenkorjauksen, se luo suorituspalvelun uuden esiintymän ja suorittaa sovelluksen kyseisessä esiintymässä. Suorituspalvelu sisältää sovelluksen ohjelmointirajapinnan (API), jota virheenkorjaus käyttää liittämiseen käynnissä olevaan prosessiin (sovellukseesi).

Kun sovelluksesi on käynnissä ja virheenkorjaus on liitetty, debuggeri kommunikoi käynnissä olevan prosessin kanssa .NET-ajonaikaisen virheenkorjausrajapintojen ja standardin virheenkorjausprotokollan avulla. Virheenkorjaus voi käsitellä prosessia (sovellus, joka on käynnissä .NET-suorituspalveluesiintymässä) asettamalla keskeytyskohtia, astumaan koodin läpi ja tarkistamalla muuttujia. Visual Studio Coden virheenkorjausliittymän avulla voit siirtyä lähdekoodissa, tarkastella puhelupinoja ja arvioida lausekkeita.

Yleisin tapa määrittää virheenkorjausistunto on launch.json tiedoston käynnistysmääritys. Tämä on virheenkorjauksen työkalujen oletusarvoinen asetus. Jos esimerkiksi luot C#-konsolisovelluksen ja valitset Suorita-valikosta Aloita virheenkorjaus, virheenkorjaus käyttää tätä menetelmää sovelluksen käynnistämiseen, liittämiseen ja käsittelemiseen sen kanssa.

Luo uusi koodiprojekti

Virheenkorjauksen työkalujen ensimmäisenä vaiheena on luoda koodiprojekti, jonka voit suorittaa virheenkorjauksessa.

  1. Avaa uusi Visual Studio Code -esiintymä.

  2. Valitse Tiedosto-valikostaAvaa kansio.

  3. Siirry Avaa kansio -valintaikkunassa Windows Desktop - kansioosi.

  4. Valitse Avaa kansio -valintaikkunassa Uusi kansio.

  5. Anna uudelle kansiolle nimi Debug101 ja valitse sitten Valitse kansio.

  6. Valitse Terminal -valikosta New Terminal.

    Uuden konsolisovelluksen luomiseen voidaan käyttää .NET CLI -komentoa.

  7. Kirjoita TERMINAL-paneelin komentokehotteeseen seuraava komento:

    dotnet new console
    
  8. Sulje TERMINAL-paneeli.

Tutustu virheenkorjauksen käynnistysmäärityksiin

Visual Studio Code käyttää käynnistysmääritystiedostoa virheenkorjausympäristössä suoritettavan sovelluksen määrittämiseen.

  1. Jos Debug101-kansio ei sisällä Debug101.sln-tiedostoa, valitse Program.cs ja varmista sitten, että luodaan .sln-tiedosto.

    C#-kooditiedoston avaaminen pyytää ympäristöä tarkistamaan projektitiedostot. .sln tiedosto on ratkaisutiedosto, jota Visual Studio käyttää projektien hallintaan ja joka luodaan yleensä automaattisesti, kun luot uuden projektin Visual Studio Codessa. Virheenkorjaus käyttää .sln -tiedostoa virheenkorjauksen ympäristössä suoritettavan projektin tunnistamiseen.

  2. Valitse Näytä-valikosta Komentovalikoima.

  3. Kirjoita komentokehotteeseen .net: g ja valitse sitten .NET: Generate Assets for Build and Debug.

  4. Huomaa uusi .vscode kansio, joka on lisätty projektikansioosi.

    Näyttökuva, jossa näkyy .vscode-kansio EXPLORER-toiminnossa.

    - .vscode kansio sisältää tiedostoja, joita käytetään virheenkorjausympäristön määrittämiseen.

  5. .vscode Laajenna kansio ja valitse sitten launch.json tiedosto.

  6. Tutki launch.json tiedostoa.

    Käynnistysmääritystiedosto voi sisältää useita määrityksiä. Jokainen määritys sisältää kokoelman määritteitä, joita käytetään kyseisen määrityksen määrittämiseen.

  7. Huomaa, että prelaunchTask-määrite määrittää koontitehtävän .

  8. Valitse -kansiosta .vscodetasks.json.

  9. Huomaa, että tasks.json tiedosto sisältää koodiprojektisi koontitehtävän .

  10. Sulje launch.json - ja tasks.json-tiedostot .

Tarkastele tarkemmin määritysten käynnistysmääritteitä myöhemmin tässä moduulissa.

Koodin suorittaminen Suorita-valikosta

Visual Studio Coden Suorita-valikossa on mahdollisuus suorittaa koodi virheenkorjauksen kanssa tai ilman sitä.

  1. Avaa Program.cs tiedosto.

  2. Korvaa Program.cs-tiedoston sisältö seuraavalla koodilla:

    /* 
    This code uses a names array and corresponding methods to display
    greeting messages
    */
    
    string[] names = new string[] { "Sophia", "Andrew", "AllGreetings" };
    
    string messageText = "";
    
    foreach (string name in names)
    {
        if (name == "Sophia")
            messageText = SophiaMessage();
        else if (name == "Andrew")
            messageText = AndrewMessage();
        else if (name == "AllGreetings")
            messageText = SophiaMessage();
            messageText = messageText + "\n\r" + AndrewMessage();
    
        Console.WriteLine(messageText + "\n\r");
    }
    
    bool pauseCode = true;
    while (pauseCode == true);
    
    static string SophiaMessage()
    {
        return "Hello, my name is Sophia.";
    }
    
    static string AndrewMessage()
    {
        return "Hi, my name is Andrew. Good to meet you.";
    }
    
  3. Valitse Tiedosto- -valikosta Tallenna.

  4. Avaa Suorita-valikko .

    Huomaa, että Suorita-valikossa on vaihtoehtoja koodin suorittamiseen virheenkorjauksen kanssa tai ilman virheenkorjausta.

  5. Valitse Suorita-valikostaSuorita ilman virheenkorjausta

  6. Huomaa, että DEBUG CONSOLE -paneelissa näkyy konsolin tuloste ja että Virheenkorjaus-työkalurivi näyttää suoritusohjausobjektit.

    DEBUG CONSOLE -paneelin pitäisi näkyä koodieditorin alla. Oletusarvoisesti Virheenkorjaus-työkalurivi (pieni koodin suorituksen ohjausobjekteja näyttävä työkalurivi) sijaitsee koodieditorin yläpuolella ja vaakasuunnassa Visual Studio Code -ikkunassa.

  7. Valitse Virheenkorjaus-työkalurivilläLopeta.

Aloita virheenkorjausistunnon käynnistäminen Suorita-valikosta

Suorita-valikossa on mahdollisuus aloittaa virheenkorjausistunto.

  1. Valitse Suorita-valikostaAloita virheenkorjaus

  2. Tarkista DEBUG CONSOLE -paneelissa näkyvät sanomat minuutin kuluttua.

    Sovelluksen tulos on sama kuin virheenkorjausta suoritettaessa, mutta muut virheenkorjausympäristön valmisteluun liittyvät sanomat tulevat näkyviin.

  3. Huomaa viestit .NET-resurssien lataamisesta ja Debug101-sovelluksen lataamisesta.

    Ensimmäiset kaksi viestiä ilmoittavat .NET-kirjaston ja sitten Debug101-sovelluksen lataamisesta.

    Loaded 'C:\Program Files\dotnet\shared\Microsoft.NETCore.App\10.0.0\System.Private.CoreLib.dll'. Skipped loading symbols. Module is optimized and the debugger option 'Just My Code' is enabled.
    Loaded 'C:\Users\someuser\Desktop\Debug101\bin\Debug\net10.0\Debug101.dll'. Symbols loaded.
    

    Virheenkorjaus käyttää .NET-suorituspalvelun erikoisesiintymää sovelluksen suorittamisen hallintaan ja sovelluksen tilan arviointiin.

  4. Valitse Virheenkorjaus-työkalurivilläLopeta.

Koodin suorittaminen Suorita- ja Virheenkorjaus-näkymässä

Visual Studio Coden RUN- JA DEBUG-näkymä tukee kattavaa virheenkorjauskokemusta.

  1. Vaihda SUORITA- JA VIRHEENKORJAUS-näkymään.

    Näyttökuva suorita-vaihtoehdosta Suorita- ja Virheenkorjaus-näkymässä.

  2. Valitse SUORITA JA VIRHEENKORJAUS -näkymässä Aloita virheenkorjaus.

    Käynnistä virheenkorjaus -painike on vihreä nuoli näkymän yläreunassa olevan ohjauspaneelin päällä.

  3. Huomaa, että DEBUG CONSOLE -paneelissa näkyvät samat virheenkorjauksen määrityssanomat, jotka näkyivät virheenkorjausprosessin aloittamisen yhteydessä Suorita-valikosta.

  4. Valitse Virheenkorjaus-työkalurivilläLopeta.

Tutki sovelluksesi tulosta

  1. Ennen kuin suljet DEBUG CONSOLE -paneelin, tarkastele koodisi tuottamaa tulosta minuutin kuluttua.

  2. Huomaa, että Andrew'n tervehdysviesti toistuu odottamatta.

Tämän moduulin loppuosassa käytät Visual Studio Coden virheenkorjaustyökaluja koodausongelmien tutkimiseen.

Kertaus

Tässä on muutamia tärkeitä asioita, jotka kannattaa muistaa tästä osiosta:

  • Visual Studio Code Debugger C#:lle käyttää .NET-ajonaikaista sovellusta käynnistääkseen ja ollakseen vuorovaikutuksessa sovelluksen kanssa.
  • Visual Studio Code Run -valikossa on vaihtoehdot sovelluksen käynnistämiseen virheenkorjauksen kanssa ja ilman virheenkorjauksen liitystä.
  • Virheenkorjaus-työkalurivi sisältää painikkeen, jolla voit lopettaa prosessin suorittamisen.
  • SUORITA JA VIRHEENKORJAUS -näkymä sisältää mahdollisuuden aloittaa sovelluksen virheenkorjaus.