Patroonkoppeling gebruiken (IDE0078 en IDE0260)
In dit artikel worden twee gerelateerde regels beschreven, IDE0078
en IDE0260
.
Eigenschappen | Weergegeven als |
---|---|
Regel-id | IDE0078 |
Titel | Patroonkoppeling gebruiken |
Categorie | Stijl |
Subcategorie | Taalregels (patroonkoppelingsvoorkeuren) |
Toepasselijke talen | C# 9.0+ |
Opties | csharp_style_prefer_pattern_matching |
Eigenschappen | Weergegeven als |
---|---|
Regel-id | IDE0260 |
Titel | Patroonkoppeling gebruiken |
Categorie | Stijl |
Subcategorie | Taalregels (patroonkoppelingsvoorkeuren) |
Toepasselijke talen | C# |
Opties | csharp_style_pattern_matching_over_as_with_null_check |
Overzicht
Deze stijlregel betreft het gebruik van C# -patroonkoppelingsconstructies .
IDE0260 markeert specifiek het gebruik van een as
expressie, gevolgd door een lid dat de null-voorwaardelijke operator leest. Deze regel is vergelijkbaar met IDE0019, waarmee het gebruik van een as
expressie wordt gevlagd, gevolgd door een null
controle.
Opties
Met opties geeft u het gedrag op dat door de regel moet worden afgedwongen. Zie Optieindeling voor meer informatie over het configureren van opties.
csharp_style_prefer_pattern_matching (IDE0078)
Eigenschappen | Waarde | Beschrijving |
---|---|---|
Optienaam | csharp_style_prefer_pattern_matching | |
Optiewaarden | true |
Gebruik waar mogelijk patroonkoppelingsconstructies |
false |
Gebruik liever geen patroonkoppelingsconstructies. | |
Standaardoptiewaarde | true |
csharp_style_pattern_matching_over_as_with_null_check (IDE0260)
Met deze optie configureert u ook regel IDE0019.
Eigenschappen | Waarde | Beschrijving |
---|---|---|
Optienaam | csharp_style_pattern_matching_over_as_with_null_check | |
Optiewaarden | true |
Geef de voorkeur aan patroonkoppeling via as expressie met toegang tot null-voorwaardelijk lid. |
false |
Hiermee schakelt u de regel uit. | |
Standaardoptiewaarde | true |
Voorbeelden
IDE0078
// csharp_style_prefer_pattern_matching = true
var x = i is default(int) or > (default(int));
var y = o is not C c;
// csharp_style_prefer_pattern_matching = false
var x = i == default || i > default(int);
var y = !(o is C c);
IDE0260
// Code with violations.
object? o = null;
if ((o as string)?.Length == 0)
{
}
// Fixed code (csharp_style_pattern_matching_over_as_with_null_check = true).
object? o = null;
if (o is string { Length: 0 })
{
}
Een waarschuwing onderdrukken
Als u slechts één schending wilt onderdrukken, voegt u preprocessorrichtlijnen toe aan uw bronbestand om de regel uit te schakelen en vervolgens opnieuw in te schakelen.
#pragma warning disable IDE0078 // or IDE0260
// The code that's violating the rule is on this line.
#pragma warning restore IDE0078 // or IDE0260
Als u de regel voor een bestand, map of project wilt uitschakelen, stelt u de ernst none
ervan in op het configuratiebestand.
[*.{cs,vb}]
dotnet_diagnostic.IDE0078.severity = none
dotnet_diagnostic.IDE0260.severity = none
Als u alle regels voor codestijl wilt uitschakelen, stelt u de ernst voor de categorie Style
none
in op in het configuratiebestand.
[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-Style.severity = none
Zie Codeanalysewaarschuwingen onderdrukken voor meer informatie.