Erro do Compilador CS0447
Atributos não podem ser usados em argumentos de tipo, somente em parâmetros de tipo
Esse erro ocorre quando você aplica um atributo a um argumento de tipo que ocorre em uma instrução de invocação. É aceitável aplicar um atributo a um parâmetro de tipo em uma instrução de declaração de classe ou método, como o seguinte:
class C<[some attribute] T> {…}
A linha de código a seguir gerará esse erro. Supõe-se que a classe C
, definida na linha de código anterior, tenha um método estático chamado MyStaticMethod
.
C<[some attribute] T>.MyStaticMethod();
O código a seguir gera o 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
}
}
Observação
Esse erro do compilador não é mais usado na Roslyn.
Comentários do .NET
O .NET é um projeto código aberto. Selecione um link para fornecer comentários: