Null-propagatie gebruiken (IDE0031)
Eigendom | Waarde |
---|---|
Regel-ID | IDE0031 |
titel | Null-doorgifte gebruiken |
Categorie | Stijl |
subcategorie | Taalregels (voorkeuren op expressieniveau) |
Toepasselijke talen | C# en Visual Basic |
opties | dotnet_style_null_propagation |
Overzicht
Deze stijlregel betreft het gebruik van de null-voorwaardelijke operator versus een ternaire voorwaardelijke uitdrukking met controle op null.
Opties
Stel de waarde van de gekoppelde optie in om op te geven of null-voorwaardelijke operatoren of ternaire voorwaardelijke expressies met null-controles moeten worden gebruikt.
Zie Option-indelingvoor meer informatie over het configureren van opties.
dotnet_style_null_propagation
Eigendom | Waarde | Beschrijving |
---|---|---|
Naam van de optie | dotnet_style_null_propagation | |
optiewaarden | true |
Geef de voorkeur aan om de null-conditional operator te gebruiken wanneer mogelijk |
false |
Gebruik waar mogelijk ternaire null-controle | |
standaardoptiewaarde | true |
// dotnet_style_null_propagation = true
var v = o?.ToString();
// dotnet_style_null_propagation = false
var v = o == null ? null : o.ToString(); // or
var v = o != null ? o.ToString() : null;
' dotnet_style_null_propagation = true
Dim v = o?.ToString()
' dotnet_style_null_propagation = false
Dim v = If(o Is Nothing, Nothing, o.ToString()) ' or
Dim v = If(o IsNot Nothing, o.ToString(), Nothing)
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 IDE0031
// The code that's violating the rule is on this line.
#pragma warning restore IDE0031
Als u de regel voor een bestand, map of project wilt uitschakelen, stelt u de ernst ervan in op none
in het configuratiebestand.
[*.{cs,vb}]
dotnet_diagnostic.IDE0031.severity = none
Als u alle regels voor de codestijl wilt uitschakelen, stelt u de ernst voor de categorie Style
in op none
in het configuratiebestand.
[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-Style.severity = none
Zie Codeanalysewaarschuwingen onderdrukkenvoor meer informatie.