Compartilhar via


BL0007: O parâmetro de componente '{0}' deve ser propriedade automática

Valor
ID da regra BL0007
Categoria Uso
Correção interruptiva ou sem interrupção Sem interrupção

Motivo

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

Descrição da regra

Um parâmetro de componente é um canal de comunicação gerenciado pelo framework entre um componente pai e um componente filho. Os desenvolvedores não devem ler ou gravar no parâmetro em um acessador get (getter) ou set (setter), seja de dentro ou de fora do componente.

Os possíveis efeitos colaterais de interagir diretamente 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 de componente como uma propriedade automática e substitua OnParametersSet ou OnParametersSetAsync na classe de componente para ler ou transformar o valor do parâmetro. Para obter mais informações, consulte o método de OnParametersSet{Async} ciclo de vida.

Quando suprimir avisos

Não suprima um aviso nessa regra.