Partilhar via


CA2257: Membros definidos em uma interface com o 'DynamicInterfaceCastableImplementationAttribute' devem ser 'estáticos'

Property valor
ID da regra CA2257
Título Membros definidos em uma interface com o 'DynamicInterfaceCastableImplementationAttribute' devem ser 'estáticos'
Categoria Utilização
A correção está quebrando ou não quebrando Sem quebra
Habilitado por padrão no .NET 10 Como aviso

Motivo

Um membro da interface não é explicitamente implementado ou marcado .static

Descrição da regra

Como um tipo que implementa IDynamicInterfaceCastable pode não implementar uma interface dinâmica nos metadados, chamadas a um membro da interface de instância que não seja uma implementação explícita definida neste tipo provavelmente falham em tempo de execução. Para evitar erros em tempo de execução, assinale os novos membros da interface static.

Como corrigir violações

Marque o membro staticda interface .

Example

[DynamicInterfaceCastableImplementation]
interface IExample
{
    // This method violates the rule.
    void BadMethod();

    // This method satisfies the rule.
    static void GoodMethod()
    {
        // ...
    }
}

Quando suprimir erros

Não suprima um aviso desta regra.

Consulte também