Dela via


BL0007: Komponentparametern ska{0} vara automatisk egenskap

Värde
Regel-ID BL0007
Kategori Användning
Korrigeringen är antingen brytande eller icke-brytande Oskiljbar

Orsak

En komponentparameter, som är en offentlig C#-egenskap för en komponentklass med [Parameter] attributet, är inte en automatiskt implementerad egenskap (automatisk egenskap).

Regelbeskrivning

En komponentparameter är en ramverkshanterad kommunikationskanal mellan en överordnad komponent och en underordnad komponent. Utvecklare bör inte läsa eller skriva till parametern i en get (getter) eller set (setter)-accessor, varken inifrån eller utanför komponenten.

Möjliga biverkningar av att interagera direkt med en komponentparameter är oändliga renderingsloopar, oväntade extra renderingar och parametervärdeöverskrivningar.

Så här åtgärdar du överträdelser

Implementera komponentparametern som en automatisk egenskap och åsidosätt OnParametersSet eller OnParametersSetAsync i komponentklassen för att läsa eller transformera parameterns värde. Mer information finns i OnParametersSet{Async} livscykelmetoden.

När du ska ignorera varningar

Ignorera inte en varning från den här regeln.