Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
.NET-kompilatorplattformsanalyserare (Roslyn) inspekterar din C# eller Visual Basic-kod för stil, kvalitet, underhåll, design och andra problem. Den här inspektionen eller analysen sker under designtiden i alla öppna filer.
Analysverktygen är indelade i följande grupper:
-
Dessa analysverktyg är inbyggda i Visual Studio. Analysatorns diagnostik-ID eller kodformat är IDExxxx, till exempel IDE0001. Du kan konfigurera inställningar på alternativsidan för textredigeraren eller i en EditorConfig-fil. Från och med .NET 5.0 ingår kodformatanalysverktyg i .NET SDK och kan tillämpas strikt som byggvarningar eller -fel. Mer information finns i Översikt över .NET-källkodsanalys.
-
Dessa analysverktyg ingår i .NET 5.0 och senare SDK och aktiveras som standard. Analysatorns diagnostik-ID eller kodformat är CAxxxx, till exempel CA1822. Mer information finns i Översikt över .NET-kodkvalitetsanalys.
Externa analysverktyg
Exempel på externa analysverktyg är StyleCop, Roslynator, xUnit Analyzeers och Sonar Analyzer. Du kan installera dessa analysverktyg som antingen ett NuGet-paket eller ett Visual Studio-tillägg.
Allvarlighetsgrad för analysatorer
Varje Roslyn-analysregel, eller diagnostik, har ett standardtillstånd för allvarlighetsgrad och undertryckning som du kan anpassa för projektet.
Allvarlighetsgraderna är: Fel, Varning, Förslag, Tyst, Ingen och Standard. Detaljerad information och beteende finns i Konfigurera allvarlighetsgradsnivåer.
Regelöverträdelser
Om en analysator hittar några överträdelser av analysregeln rapporterar den dem i fönstret Fellista och i kodredigeraren.
Följande skärmbild visar regelöverträdelser som rapporterats i fönstret Fellista . De överträdelser av analyseraren som rapporteras i fellistan matchar allvarlighetsgradsinställningen för regeln:
Överträdelser av analysregler visas också i kodredigeraren som vågiga linjer under den anstötliga koden. Följande skärmbild visar till exempel tre överträdelser: ett fel (röd vågrät linje), en varning (grön vågrät linje) och ett förslag (tre grå punkter):
Kodkorrigeringar
Många diagnostiker har en eller flera associerade kodkorrigeringar som du kan tillämpa för att korrigera regelöverträdelsen. Kodkorrigeringar visas i menyn med glödlampans ikon tillsammans med andra typer av snabbåtgärder. Mer information om kodkorrigeringar finns i Vanliga snabbåtgärder.
Konfigurera allvarlighetsnivåer för analysverktyg
Du kan konfigurera allvarlighetsgraden för analysregler i en EditorConfig-fil eller från glödlampans meny.
Du kan också konfigurera analysverktyg för att inspektera kod vid byggtid och när du skriver. Du kan konfigurera omfånget för livekodanalys så att den endast körs för det aktuella dokumentet, alla öppna dokument eller hela lösningen. Mer information finns i Konfigurera livekodanalys för .NET.
Tips/Råd
Build-time-fel och varningar från kodanalysverktyg visas endast om analysverktygen installeras som ett NuGet-paket. De inbyggda analysverktygen (till exempel IDE0067 och IDE0068) körs aldrig under bygget.
Installera externa kodanalysverktyg
Visual Studio innehåller en grundläggande uppsättning Roslyn-analysverktyg som alltid är aktiva. Om du behöver fler kodanalyserare kan du installera externa analysverktyg för varje projekt via ett NuGet-paket. Vissa analysverktyg är också tillgängliga som ett Visual Studio .vsix-tillägg , i vilket fall de gäller för alla lösningar som du öppnar i Visual Studio. Information om hur du installerar dessa två olika typer av analysverktyg finns i Installera kodanalysverktyg.
Omfång
Om du installerar en analysator som ett NuGet-paket, den bästa metoden för externa analysverktyg, gäller den endast för projektet där NuGet-paketet är installerat. Annars gäller det på lösningsnivå och för alla instanser av Visual Studio om du installerar en analysator som ett Visual Studio-tillägg. I teammiljöer är en analysator som installeras som ett NuGet-paket tillgänglig för alla utvecklare som arbetar med projektet.
Anmärkning
Analysverktyg från första part levereras i .NET SDK. Det är bättre att du aktiverar dessa analysverktyg från .NET SDK i stället för att installera dem som ett Microsoft.CodeAnalysis.NetAnalyzersNuGet-paket. Om du aktiverar analysverktygen från .NET SDK ser du till att du automatiskt får felkorrigeringar för analysverktyg och nya analysverktyg så snart du uppdaterar SDK:n. Mer information om analysverktyg finns i Aktivera eller installera .NET-analysverktyg från första part.
Build-fel
Om du vill framtvinga reglerna vid bygget väljer du något av följande alternativ genom att antingen använda kommandoradsversioner eller ci-versioner (kontinuerlig integrering):
Skapa ett .NET 5.0- eller senare projekt som möjliggör kodanalys som standard. Om du vill aktivera kodanalys för projekt som riktar sig mot tidigare .NET-versioner anger du egenskapen EnableNETAnalyzers till
true.Installera analysverktygen som ett NuGet-paket. Om du installerar analysverktygen som ett Visual Studio-tillägg visas inte analysvarningar och fel i byggrapporten.
Följande skärmbild visar kommandoradsversionens utdata från att skapa ett projekt som innehåller en regelöverträdelse för analysverktyg:
Allvarlighetsgrad för regel
Om du vill konfigurera allvarlighetsgraden för analysregeln för externa analysverktyg måste du installera analysatorn som ett NuGet-paket. Du kan inte konfigurera regel allvarlighetsgrad från analysverktyg som har installerats som ett Visual Studio-tillägg.