Compartilhar via


CS0447 de erro do compilador

Mensagem de erro

Atributos não podem ser usados em argumentos de tipo, somente em parâmetros de tipo

Este erro ocorre quando você aplica um atributo a um argumento de tipo que ocorre em uma demonstrativo de chamada.É aceitável para aplicar um atributo a um parâmetro de tipo em uma demonstrativo de demonstrativo de classe ou método, sistema autônomo o seguinte:

class C<[some attribute] T> {…}

A linha de código a seguir irá gerar este erro.Presume-se que a classe C, definido na linha de código anterior, tem um método estático chamado MyStaticMethod.

C<[some attribute] T>.MyStaticMethod();

Exemplo

O código a seguir gera erro CS0447.

// CS0447.cs
using System;
namespace Test41
{
    public interface I<A> 
    {
        void Meth<B>();
    }
    public class B : I<int> 
    {
        void I<[Test] int>.Meth<X>() { }  // CS0447
    }
}