Ошибка компилятора CS0447
Невозможно использовать атрибуты для аргументов-типов, можно только для параметров-типов
Эта ошибка возникает при применении атрибута к аргументу типа, который содержится в операторе вызова. Разрешается применять атрибут к параметру типа в операторе объявления класса или метода, как показано в следующем коде:
class C<[some attribute] T> {…}
В приведенной ниже строке кода возникает эта ошибка. Предполагается, что класс C
, определенный в предыдущей строке кода, имеет статический метод с именем MyStaticMethod
.
C<[some attribute] T>.MyStaticMethod();
Следующий код создает ошибку 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
}
}
Примечание
Эта ошибка компилятора больше не используется в Roslyn.
Отзыв о .NET
.NET — это проект с открытым исходным кодом. Выберите ссылку, чтобы оставить отзыв: