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.
Property | Värde |
---|---|
Regel-ID | CA1030 |
Title | Använd händelser där det är lämpligt |
Kategori | Designa |
Korrigeringen är icke-bakåtkompatibel | Icke-icke-bryta |
Aktiverad som standard i .NET 9 | Nej |
Ett metodnamn börjar med något av följande:
- AddOn
- RemoveOn
- Eld
- Höja
Som standard tittar den här regeln bara på externt synliga metoder, men det kan konfigureras.
Den här regeln identifierar metoder som har namn som normalt används för händelser. Händelser följer designmönstret Observer eller Publish-Subscribe; de används när en tillståndsändring i ett objekt måste kommuniceras med andra objekt. Om en metod anropas som svar på en tydligt definierad tillståndsändring ska metoden anropas av en händelsehanterare. Objekt som anropar metoden bör generera händelser i stället för att anropa metoden direkt.
Några vanliga exempel på händelser finns i användargränssnittsprogram där en användaråtgärd som att klicka på en knapp gör att ett kodsegment körs. .NET-händelsemodellen är inte begränsad till användargränssnitt. Den bör användas var som helst där du måste kommunicera tillståndsändringar till ett eller flera objekt.
Om metoden anropas när tillståndet för ett objekt ändras kan du ändra designen så att den använder .NET-händelsemodellen.
Ignorera en varning från den här regeln om metoden inte fungerar med .NET-händelsemodellen.
Om du bara vill förhindra en enda överträdelse lägger du till förprocessordirektiv i källfilen för att inaktivera och aktiverar sedan regeln igen.
#pragma warning disable CA1030
// The code that's violating the rule is on this line.
#pragma warning restore CA1030
Om du vill inaktivera regeln för en fil, mapp eller ett projekt anger du dess allvarlighetsgrad till none
i konfigurationsfilen.
[*.{cs,vb}]
dotnet_diagnostic.CA1030.severity = none
Mer information finns i Så här utelämnar du kodanalysvarningar.
Använd följande alternativ för att konfigurera vilka delar av kodbasen som regeln ska köras på.
Du kan konfigurera det här alternativet för bara den här regeln, för alla regler som gäller för eller för alla regler i den här kategorin (design) som den gäller för. Mer information finns i Konfigurationsalternativ för kodkvalitetsregel.
Du kan konfigurera vilka delar av kodbasen som ska köra den här regeln baserat på deras tillgänglighet genom att ange alternativet api_surface. Om du till exempel vill ange att regeln endast ska köras mot den icke-offentliga API-ytan lägger du till följande nyckel/värde-par i en .editorconfig-fil i projektet:
dotnet_code_quality.CAXXXX.api_surface = private, internal
Anteckning
Ersätt den XXXX
delen av CAXXXX
med ID:t för den tillämpliga regeln.
Feedback om .NET
.NET är ett öppen källkod projekt. Välj en länk för att ge feedback: