Baca dalam bahasa Inggris

Bagikan melalui


Kesalahan Pengompilasi CS0447

Atribut tidak dapat digunakan pada argumen jenis, hanya pada parameter jenis

Kesalahan ini terjadi ketika Anda menerapkan atribut ke argumen jenis yang terjadi dalam pernyataan pemanggilan. Dapat diterima untuk menerapkan atribut ke parameter jenis dalam pernyataan deklarasi kelas atau metode seperti berikut:

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

Baris kode berikut akan menghasilkan kesalahan ini. Diasumsikan bahwa kelas C, yang ditentukan dalam baris kode sebelumnya, memiliki metode statis yang disebut MyStaticMethod.

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

Contoh

Kode berikut menghasilkan kesalahan CS0447:

C#
// 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
    }
}

Catatan

Kesalahan Pengompilasi ini tidak lagi digunakan di Roslyn.