Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Ebben a cikkben megtudhatja, hogyan végezhet hatékonyabb hibakeresést a GitHub Copilot használatával. A Copilot részletes elemzéssel és a kód működésével kapcsolatos magyarázatokkal is elláthatja a kódjavításokat. Segít a hibák javasolt javításában, és elmagyarázza az olyan dolgokat, mint a kivételek. A Copilot ismeri a hívásveremeket, a kereteket, a változóneveket és az értékeket. Ennek eredményeképpen a hibakeresővel tisztában lévő mesterséges intelligenciával együttműködve részletes kérdéseket tehet fel a kóddal és általában a hibakeresési problémákkal kapcsolatban.
Emellett a Copilot pontosabb segítséget nyújt bizonyos célzott forgatókönyvekhez, például kivételekhez, valamint a mesterséges intelligenciával bővített forgatókönyvekben leírtakhoz ahibakereséséhez. A legtöbb ilyen forgatókönyvben keresse meg az Ask Copilot
gomb. Ezekben a forgatókönyvekben a Copilot már ismeri a kérdések kontextusát.
További információkért a Visual Studio-ban található GitHub Copilot kiegészítésekről lásd: A Visual Studio GitHub Copilot kiegészítései.
Előfeltételek
Az első lépésekhez a következőkre van szüksége:
A Visual Studio 2022 17.8- vagy újabb verziója
Jelentkezzen be a Visual Studio-ba egy GitHub-fiókkalCopilot-hozzáféréssel
** Használhatja ingyen a GitHub Copilotot. Regisztráljon, és használja ki az AI-t a gyorsabb és hatékonyabb kódoláshoz.Jegyzet
Ha a bővítmény telepítése után hitelesítési problémákat tapasztal, tekintse meg A GitHub Copilot Chathitelesítési problémáinak elhárítása.
AI-továbbfejlesztett forgatókönyvek
A Copilot ismeri a hívásveremeket, a kereteket, a változóneveket és az értékeket. Ennek eredményeképpen a hibakeresővel tisztában lévő mesterséges intelligenciával együttműködve részletes kérdéseket tehet fel a kóddal és általában a hibakeresési problémákkal kapcsolatban.
Emellett a Copilot pontosabb segítséget nyújt bizonyos célzott forgatókönyvekhez, például az alábbi táblázatban ismertetettekhez.
| Funkció vagy forgatókönyv | Hivatkozás |
|---|---|
| Kivételek | Ebben a cikkben lásd a(z) részben a Copilot kivétel hibakeresését. A kivételekkel kapcsolatos súgó tartalmazza a holtpont észlelési hibáival kapcsolatos súgót. |
| Változók | Lásd: AI-segítség kérése. |
| LINQ-lekérdezéselemzés | Vigye az egérmutatót a LINQ-lekérdezések fölé, miközben hibakeresést végzett a kódszerkesztőben a visszatérési érték megtekintéséhez. Az AI-támogatáshoz válassza az Elemzés a Copilottal gombot. Lásd: LINQ-lekérdezések visszatérési értékeinek megtekintése. |
| Adattippek | Tekintse meg az AI-segítséget az adattippekkel kapcsolatban. |
| Feltételes töréspontok és nyomkövetési pontok | Lásd ebben a cikkben a javaslatok megtekintése feltételes töréspontokkal és nyomkövetési pontokkal részt. |
| Gyorsműveletek (villanykörte) | Lásd: Kérjen AI-segítséget a gyorsműveletekhez. |
| IEnumerable táblázatos vizualizáció | Lásd: AI-segítség kérése. |
| Sorba illesztett visszaadott értékek | Lásd: Metódushívások visszatérési értékeinek megtekintése. |
| Beágyazott értékek | Lásd Beágyazott értékek megtekintése. |
| Többszálas hibakeresés | Lásd: AI-segítség kérése a Szálak nézethez. |
| Egységtesztelés | Lásd: AI-segítség kérése a tesztek hibakereséséhez |
| Kivételek vizsgálata adattárkörnyezettel | Lásd: AI-segítség kérése adattárkörnyezettel |
| Töréspontok hibaelhárítása | Lásd: AI-segítség kérése. |
A legtöbb ilyen forgatókönyvben célzott segítséget kaphat az Ask Copilot
az Elemzés a Copilot gombbal. A Copilot már ismeri a kérdések kontextusát. Ismeri például az aktuális hívási vermet, a kért kódsort és a kivétel nevét (ha történt), így nem kell saját kontextust megadnia a csevegésben. A Copilot emellett javaslatokat is kínál a feltételes töréspontok és nyomkövetési pontok használatára.
Hibakeresés a Copilot használatával
Az alábbi egyszerű példa bemutatja, hogyan kérhet AI-segítséget a beágyazott csevegési nézettel.
Jegyzet
A különálló csevegőablakot is használhatja segítség kérésére, ha kiválasztja a Nézet > GitHub Copilot Chatlehetőséget. További információért lásd: Mi is az a GitHub Copilot Chat bővítmény a Visual Studio számára?.
Hibakeresési munkamenet indítása
A Visual Studióban hozzon létre egy új C#-konzolalkalmazást.
A kezdési ablakban válassza az Új projekt létrehozásalehetőséget. Írja be konzol a keresőmezőbe, válassza C# nyelvként, majd válassza a .NET-hez készült Konzolalkalmazás lehetőséget. Válassza a Következőlehetőséget. Írjon be egy projektnevet, például ConsoleApp_Copilot, és válassza Következőlehetőséget.
Válassza ki az ajánlott cél keretrendszert vagy a .NET 8-at, majd válassza a Létrehozáslehetőséget.
Ha nem látja a .NET-hez készült Konzolalkalmazás projektsablont, lépjen Eszközök>Eszközök és szolgáltatások lekéréseelemre, amely megnyitja a Visual Studio Installert. Válassza a .NET asztali fejlesztés munka terhelését, majd válassza a Módosítás lehetőséget.
A Visual Studio létrehozza a konzolprojektet, amely a jobb oldali panelen Megoldáskezelő jelenik meg.
Cserélje le a Program.cs kódját a következő kódra:
using System; using System.Collections.Generic; public class Example { public static void Main(string[] args) { int value = Int32.Parse(args[0]); List<String> names = null; if (value > 0) names = new List<String>(); names.Add("Major Major Major"); } }Kattintson a jobb gombbal a következő utasításra, és válassza a Töréspont>Töréspont beszúrásalehetőséget.
int value = Int32.Parse(args[0]);Nyomja le F5, vagy válassza Hibakeresés indítása lehetőséget a Hibakeresés menüből.
Az alkalmazás szünetel a töréspontnál. Az Autos ablak azt mutatja, hogy az args változó értéke
string[0].
Kattintson a jobb gombbal a kódra, és válassza az Copilot kérése opciót a beépített csevegési nézet megnyitásához.
Tipp
Másik lehetőségként kattintson a jobb gombbal egy változóra az Automatikusak vagy a Helyiek ablakban, vagy egy adattippben, és válassza A Copilot kéréselehetőséget. Ez biztosítja a Copilot számára a változó nevét és környezetét, így önnek nem kell saját kontextust megadnia a csevegésben.
Írja be a következő kérdést a beágyazott csevegési nézetben:
Why does the args variable have a value of string[0]?
Az Enterbillentyű lenyomásakor a Copilot választ ad a kód ismerete alapján. (Előfordulhat, hogy az itt láthatótól eltérő választ kap.)
Ha a Copilot rendelkezik a kódhoz javasolt javítással, az megjelenik. Ha nem, kérheti a Copilottól a kódjavaslatot.
Tipp
A beágyazott csevegés során használja a "#" szimbólumot, és válasszon a legördülő listából, hogy specifikus információkat oszthasson meg a Copilot-tal, miközben a kérdésben hivatkozik rá. Ha például kiválaszt egy részt a kódból, és ezután beírja a # jelet, akkor ezt a kijelölést kiválaszthatja a # legördülő listából. A "#" szimbólummal hivatkozhat a legördülő listában megjelenő IDE-funkciókra, például a Helyiek ablakra.
Ebben a példában görgessen a Copilot-válasz végéhez, és válassza ki a következő kérdést a beágyazott csevegés ablakának végén: "Hogyan kezelhetem az esetet, ha nem adnak át argumentumokat a programnak?"
A Copilot a kód javasolt javítását jeleníti meg.
Ha alkalmazni szeretné a kódjavítást, válassza az Elfogadáslehetőséget.
Válassza a Mégse lehetőséget, hogy a következő szakaszban tovább tanulhassuk a Copilot egyéb funkcióit.
Kivétel hibakeresése a Copilottal
Az alábbi egyszerű példa bemutatja, hogyan kérhet AI-segítséget, ha kivételt tapasztal, és hogyan frissítheti a kódot az AI által javasolt javítások alapján.
Hibakeresési munkamenet indítása
Szüneteltetéskor a hibakeresőben ugyanazzal a mintaalkalmazással nyomja meg az F11 vagy a Hibakeresés>Lépés bele gombot az aktuális utasítás végrehajtásához.
Egy
IndexOutOfRangeExceptiontörténik, és az alkalmazás szünetel, megjelenítve a kivételt.Ha AI-segítséget szeretne kérni a kivételhez, folytassa a következő szakaszsal.
AI-segítség kérése
Ha az alkalmazás megállt egy kivétel miatt, válassza a Copilot kérése gombot.
Ha még nincs megnyitva, megjelenik a Copilot Csevegés ablaka, amely kiértékeli a hibát és annak okát. Ebben a példában a Copilot azonosítja a javasolt kódjavítást, a kód másolására szolgáló gombot, valamint a kódjavításhoz tartozó Előnézet gombot.
Ha kérdése van a kivétellel kapcsolatban, tegye fel őket az Ask Copilot szövegmezőben.
Válassza a Előnézet gombot.
A Visual Studio egy kódelőnézetet jelenít meg a javasolt javítással.
Tekintse át a javasolt javítást, és válassza az Elfogadás lehetőséget a kódjavaslat alkalmazásához.
Indítsa újra a hibakeresőt.
Ezúttal nem történik kivétel. Kijavítottuk!
Javaslatok lekérése feltételes töréspontok és nyomkövetési pontok használatával
A Copilot javaslatokat nyújt a te kódodhoz kapcsolódó feltételes töréspontokra és nyomkövetési pontokra.
Ebben a példában a feltételes töréspontra vonatkozó AI-javaslatokat mutatunk be. A nyomkövetési pontok esetében az AI-támogatás ugyanúgy működik.
Az aktuális töréspont eltávolításához kattintson rá, vagy kattintson rá a jobb gombbal, és válassza a Töréspont törléselehetőséget.
Cserélje le a következő kódsort:
names.Add("Major Major Major");a következővel:
// names.Add("Major Major Major"); foreach (var item in args) { names.Add("Name: " + item); }A(z)
names.Add("Name: " + item)utasítástól balra kattintson a jobb gombbal a margóra, és válassza a(z) Feltételes töréspont beszúrásalehetőséget.Jelölje ki a kifejezésmezőt, és a Copilot elkezdi a javaslatokon dolgozni.
Amikor megjelennek a javaslatok, válasszon egyet, például
item == "John". Módosítsa a javaslatot, hogy a névFredlegyen.
A feltételes kifejezés tesztelése:
Kattintson a jobb gombbal a ConsoleApp_Copilot projektre a Megoldáskezelőben, és válassza a Tulajdonságoklehetőséget.
Válassza a Hibakeresés>Általános>Hibakeresési indítási profilok kezelőfelületének megnyitásalehetőséget.
A parancssori argumentumok mezőben adja meg a
5 Fred Joe, három külön sorban.
Indítsa újra a hibakeresőt.
Amikor a hibakereső szünetel a töréspontnál, ellenőrizze a
itemértékét, és ellenőrizze, hogy az aktuális értékFred-e.