Semplificare il modello di proprietà (IDE0170)
Proprietà | Valore |
---|---|
ID regola | IDE0170 |
Titolo | Semplificare il modello di proprietà |
Categoria | Stile |
Subcategory | Regole del linguaggio (preferenze di corrispondenza dei modelli) |
Lingue applicabili | C# |
Opzioni | csharp_style_prefer_extended_property_pattern |
Panoramica
Questa regola di stile contrassegna l'uso di un modello annidato in un modello di proprietà. Un modello annidato può essere semplificato per usare un modello di proprietà esteso in cui vengono usati i sottopattern di proprietà per fare riferimento ai membri annidati. I modelli di proprietà estesi migliorano la leggibilità del codice.
Opzioni
Le opzioni specificano il comportamento che si vuole applicare la regola. Per informazioni sulla configurazione delle opzioni, vedere Formato opzione.
csharp_style_prefer_extended_property_pattern
Proprietà | Valore | Descrizione |
---|---|---|
Nome opzione | csharp_style_prefer_extended_property_pattern | |
Valori di opzione | true |
Preferisce il modello di proprietà esteso. |
false |
Disabilita la regola. | |
Valore dell'opzione predefinito | true |
Esempio
public record Point(int X, int Y);
public record Segment(Point Start, Point End);
// Violates IDE0170.
static bool IsEndOnXAxis(Segment segment) =>
segment is { Start: { Y: 0 } } or { End: { Y: 0 } };
// Fixed code.
static bool IsEndOnXAxis(Segment segment) =>
segment is { Start.Y: 0 } or { End.Y: 0 };
Eliminare un avviso
Se si vuole eliminare solo una singola violazione, aggiungere direttive di preprocessore al file di origine per disabilitare e quindi riabilitare la regola.
#pragma warning disable IDE0170
// The code that's violating the rule is on this line.
#pragma warning restore IDE0170
Per disabilitare la regola per un file, una cartella o un progetto, impostare la relativa gravità su none
nel file di configurazione.
[*.{cs,vb}]
dotnet_diagnostic.IDE0170.severity = none
Per disabilitare tutte le regole in stile codice, impostare la gravità per la categoria Style
su none
nel file di configurazione.
[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-Style.severity = none
Per altre informazioni, vedere Come eliminare gli avvisi di analisi del codice.