Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
| Value | |
|---|---|
| ID da regra | ASP0006 |
| Categoria | Usage |
| Correção é disruptiva ou não disruptiva | Non-breaking |
Motivo
Uma invocação em um método em RenderTreeBuilder contendo um número de sequência que não é um literal como parâmetro.
Descrição da regra
BlazorO algoritmo de diferenciação de interface do usuário depende de números de sequência para determinar quais elementos foram alterados. Calcular o número de sequência dinamicamente ou usar um contador pode resultar em um desempenho de diferenciação ruim. Em vez disso, use um número de sequência literal que mapeie para a linha do código-fonte do elemento. Por exemplo, o código a seguir produz um erro:
using Microsoft.AspNetCore.Components.Rendering;
var builder = new RenderTreeBuilder();
var seqNum = 1;
builder.OpenElement(seqNum, "div");
builder.CloseElement();
Como corrigir violações
Para corrigir uma violação dessa regra, verifique se as chamadas para métodos na RenderTreeBuilder classe que usam um número de sequência como parâmetro usam um número de sequência literal.
using Microsoft.AspNetCore.Components.Rendering;
var builder = new RenderTreeBuilder();
builder.OpenElement(0, "div");
builder.CloseElement();
Quando suprimir avisos
Não suprimir um aviso desta regra. Usar um número de sequência não literal pode resultar em degradação de desempenho.