Delen via


Eigenschappenpatroon vereenvoudigen (IDE0170)

Eigenschap Waarde
Regel-id IDE0170
Titel Eigenschapspatroon vereenvoudigen
Categorie Stijl
Subcategorie Taalregels (voorkeuren voor patroonkoppeling)
Toepasselijke talen C#
Opties csharp_style_prefer_extended_property_pattern

Overzicht

Deze stijlregel markeert het gebruik van een geneste patroon in een eigenschapspatroon. Een geneste patroon kan worden vereenvoudigd door een uitgebreid eigenschapspatroon te gebruiken waarin subpatronen van eigenschappen worden gebruikt om te verwijzen naar geneste leden. Uitgebreide eigenschapspatronen verbeteren de leesbaarheid van code.

Opties

Met opties wordt het gedrag opgegeven dat door de regel moet worden afgedwongen. Zie Optie-indeling voor meer informatie over het configureren van opties.

csharp_style_prefer_extended_property_pattern

Eigenschap Waarde Beschrijving
Optienaam csharp_style_prefer_extended_property_pattern
Optiewaarden true Geef de voorkeur aan het uitgebreide eigenschapspatroon.
false Hiermee schakelt u de regel uit.
Standaardoptiewaarde true

Voorbeeld

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

Een waarschuwing onderdrukken

Als u slechts één schending wilt onderdrukken, voegt u preprocessor-instructies toe aan het bronbestand om de regel uit te schakelen en vervolgens opnieuw in te schakelen.

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

Als u de regel voor een bestand, map of project wilt uitschakelen, stelt u de ernst in op none in het configuratiebestand.

[*.{cs,vb}]
dotnet_diagnostic.IDE0170.severity = none

Als u alle codestijlregels 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 Waarschuwingen voor codeanalyse onderdrukken voor meer informatie.

Zie ook