Share via


Förenkla egenskapsmönster (IDE0170)

Egenskap Värde
Regel-ID IDE0170
Rubrik Förenkla egenskapsmönster
Kategori Format
Underkategori Språkregler (inställningar för mönstermatchning)
Tillämpliga språk C#
Alternativ csharp_style_prefer_extended_property_pattern

Översikt

Den här formatregeln flaggar användningen av ett kapslat mönster i ett egenskapsmönster. Ett kapslat mönster kan förenklas om du vill använda ett utökat egenskapsmönster där egenskapsundermönster används för att referera till kapslade medlemmar. Utökade egenskapsmönster förbättrar kodens läsbarhet.

Alternativ

Alternativ anger det beteende som du vill att regeln ska framtvinga. Information om hur du konfigurerar alternativ finns i Alternativformat.

csharp_style_prefer_extended_property_pattern

Egenskap Värde Beskrivning
Alternativnamn csharp_style_prefer_extended_property_pattern
Alternativvärden true Föredra det utökade egenskapsmönstret.
false Inaktiverar regeln.
Standardalternativvärde true

Exempel

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 };

Ignorera en varning

Om du bara vill förhindra en enda överträdelse lägger du till preprocessor-direktiv i källfilen för att inaktivera och aktiverar sedan regeln igen.

#pragma warning disable IDE0170
// The code that's violating the rule is on this line.
#pragma warning restore IDE0170

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.IDE0170.severity = none

Om du vill inaktivera alla regler i kodstil anger du allvarlighetsgraden för kategorin Style till none i konfigurationsfilen.

[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-Style.severity = none

Mer information finns i Så här utelämnar du kodanalysvarningar.

Se även