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.
A .NET fordítóplatform (Roslyn) elemzői stílussal, minőséggel, karbantarthatóságmal, tervezéssel és egyéb problémákkal foglalkoznak a C# vagy a Visual Basic kóddal. Ez az ellenőrzés vagy elemzés az összes megnyitott fájl tervezési ideje alatt történik.
Az elemzők a következő csoportokba vannak osztva:
-
Ezek az elemzők a Visual Studióba vannak beépítve. Az elemző diagnosztikai azonosítója vagy kódformátuma például IDExxxx, például IDE0001. A beállításokat a szövegszerkesztő beállításai lapon vagy egy EditorConfig-fájlban konfigurálhatja. A .NET 5.0-tól kezdődően a kódstílus-elemzők a .NET SDK részét képezik, és szigorúan érvényesíthetők összeállítási figyelmeztetésekként vagy hibákként. További információ: .NET-forráskódelemzés áttekintése.
-
Ezek az elemzők az .NET 5.0 és újabb SDK részét képezik, és alapértelmezés szerint engedélyezve vannak. Az elemző diagnosztikai azonosítója vagy kódformátuma CAxxxx, például CA1822. További információ: .NET-kódminőség-elemzés áttekintése.
Külső elemzők
Külső elemzők például a StyleCop, a Roslynator, az xUnit Analyzers és a Sonar Analyzer. Ezeket az elemzőket NuGet-csomagként vagy Visual Studio-bővítményként is telepítheti.
Az elemzők súlyossági szintjei
Minden Roslyn-elemző szabálynak vagy diagnosztikai szabálynak van egy alapértelmezett súlyossága és elnyomási állapota, amelyet testre szabhat a projekthez.
A súlyossági szintek a következők: Hiba, Figyelmeztetés, Javaslat, Csendes, Nincs és Alapértelmezett. Részletes információkért és viselkedésért tekintse meg a súlyossági szintek konfigurálását ismertető témakört.
Szabálysértések
Ha egy elemző bármilyen elemzőszabály-szabálysértést talál, a Hibalista ablakban és a kódszerkesztőben jelenti őket.
Az alábbi képernyőkép a Hibalista ablakban jelentett szabályszegéseket mutatja be. A hibalistában jelentett elemzői szabálysértések megegyeznek a szabály súlyossági szintjének beállításával :
Az elemzőszabály-szabály megsértései a kódszerkesztőben is megjelennek a szabálysértő kód alatti hullámos vonalakként. Az alábbi képernyőképen például három szabálysértés látható: egy hiba (piros hullámos vonal), egy figyelmeztetés (zöld hullámos vonal) és egy javaslat (három szürke pont):
Kódjavítások
Számos diagnosztika rendelkezik egy vagy több társított kódjavítással , amelyeket alkalmazhat a szabálysértés kijavításához. A kódjavítások a villanykörte ikon menüjében, valamint más típusú gyorsműveletek is megjelennek. A kódjavításokról további információt a Gyakori gyorsműveletek című témakörben talál.
Az elemző súlyossági szintjeinek konfigurálása
Az elemzőszabályok súlyosságát egy EditorConfig-fájlban vagy a villanykörte menüben konfigurálhatja.
Az elemzőket úgy is konfigurálhatja, hogy a buildeléskor és a beíráskor vizsgálja meg a kódot. Az élő kódelemzés hatókörét konfigurálhatja úgy, hogy csak az aktuális dokumentumra, az összes megnyitott dokumentumra vagy a teljes megoldásra hajtsa végre. További információ: Élő kódelemzés konfigurálása a .NET-hez.
Jótanács
A buildelési hibák és a kódelemzők figyelmeztetései csak akkor jelennek meg, ha az elemzők NuGet-csomagként vannak telepítve. A beépített elemzők (például IDE0067 és IDE0068) soha nem futnak a buildelés során.
Külső kódelemzők telepítése
A Visual Studio tartalmazza a Roslyn-elemzők alapvető készletét, amelyek mindig aktívak. Ha több kódelemzőre van szüksége, minden projekthez telepíthet külső elemzőket egy NuGet-csomagon keresztül. Egyes elemzők Visual Studio .vsix-bővítményként is elérhetők, ebben az esetben a Visual Studióban megnyitott megoldásokra vonatkoznak. A két különböző típusú elemző telepítéséről további információt a Kódelemzők telepítése című témakörben talál.
Hatókör
Ha nuGet-csomagként telepít egy elemzőt, amely a külső elemzők előnyben részesített módszere, az csak arra a projektre vonatkozik, amelyben a NuGet-csomag telepítve van. Ellenkező esetben, ha egy elemzőt Visual Studio-bővítményként telepít, az a megoldás szintjén és a Visual Studio összes példányára érvényes. Csapatkörnyezetekben a NuGet-csomagként telepített elemző az adott projekten dolgozó összes fejlesztő számára elérhető.
Megjegyzés:
Az első féltől származó elemzők a .NET SDK-n belül szállnak le. Célszerű engedélyezni ezeket az elemzőket a .NET SDK-ból ahelyett, hogy Microsoft.CodeAnalysis.NetAnalyzers telepíti őket. Ha engedélyezi az elemzőket a .NET SDK-ból, akkor az SDK frissítése után azonnal automatikusan megkapja az elemzői hibajavításokat és az új elemzőket. Az elemzőkről további információt az első féltől származó .NET-elemzők engedélyezése vagy telepítése című témakörben talál.
Összeállítási hibák
Ha parancssori vagy folyamatos integrációs (CI) buildekkel szeretné kikényszeríteni a szabályokat a létrehozáskor, válasszon az alábbi lehetőségek közül:
Hozzon létre egy .NET 5.0-s vagy újabb projektet, amely alapértelmezés szerint engedélyezi a kódelemzést. A korábbi .NET-verziókat megcélzó projektek kódelemzésének engedélyezéséhez állítsa az EnableNETAnalyzers tulajdonságot a következőre
true: .Telepítse az elemzőket NuGet-csomagként. Ha az elemzőket Visual Studio-bővítményként telepíti, az elemző figyelmeztetései és hibái nem jelennek meg a buildjelentésben.
Az alábbi képernyőképen egy olyan projekt parancssori buildkimenete látható, amely egy elemzési szabály megsértését tartalmazza:
Szabály súlyossága
Ha a külső elemzőkhöz szeretné konfigurálni az elemzőszabály súlyosságát , nuGet-csomagként kell telepítenie az elemzőt. Nem konfigurálható a szabály súlyossága a Visual Studio-bővítményként telepített elemzőktől.