Partilhar via


BL0007: O parâmetro do componente '{0}' deve ser propriedade auto

Valor
ID da regra BL0007
Categoria Utilização
A correção é invasiva ou não invasiva Inquebrável

Motivo

Um parâmetro component, que é uma propriedade C# pública de uma classe de componente com o [Parameter] atributo, não é uma propriedade implementada automaticamente (propriedade auto).

Descrição da regra

Um parâmetro de componente é um canal de comunicação gerido pela estrutura entre um componente pai e um componente filho. Os desenvolvedores não devem ler nem gravar diretamente no parâmetro, seja no acessor get (getter) ou set (setter), tanto de dentro como de fora do componente.

Os possíveis efeitos colaterais da interação direta com um parâmetro de componente incluem loops de renderização infinitos, renderizações extras inesperadas e substituições de valor de parâmetro.

Como corrigir violações

Implemente o parâmetro component como uma propriedade auto e substitua OnParametersSet ou OnParametersSetAsync na classe component para ler ou transformar o valor do parâmetro. Para obter mais informações, consulte o método doOnParametersSet{Async} ciclo de vida.

Quando suprimir avisos

Não ignore um aviso desta regra.