Erro do compilador CS0447
Os 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 type que ocorre em uma instrução de invocação. É aceitável aplicar um atributo a um parâmetro type em uma instrução de declaração de classe ou método, como a seguinte:
class C<[some attribute] T> {…}
A seguinte linha de código irá gerar este erro. Supõe-se que a classe C
, definida na linha de código anterior, tem 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
}
}
Nota
Este erro de compilador não é mais usado no Roslyn.
Comentários do .NET
O .NET é um projeto código aberto. Selecione um link para fornecer comentários: