Baca dalam bahasa Inggris

Bagikan melalui


Kesalahan pengompilasi CS0200

Properti atau 'property' pengindeks tidak dapat ditetapkan ke -- properti hanya dapat dibaca

Upaya dilakukan untuk menetapkan nilai ke properti, tetapi properti tidak memiliki aksesor yang ditetapkan atau penugasan berada di luar konstruktor. Atasi kesalahan dengan menambahkan aksesor set. Untuk informasi selengkapnya, lihat Cara mendeklarasikan dan menggunakan properti baca-tulis.

Contoh

Sampel berikut menghasilkan CS0200:

// CS0200.cs
public class Example
{
    private int _mi;
    int I
    {
        get
        {
            return _mi;
        }
        // uncomment the set accessor and declaration for _mi
        /*
        set
        {
            _mi = value;
        }
        */
    }

    public static void Main()
    {  
        Example example = new Example();
        example.I = 9;   // CS0200
    }
}  

Sampel berikut menggunakan penginisialisasi properti dan objek yang diimplementasikan secara otomatis dan masih menghasilkan CS0200:

// CS0200.cs
public class Example
{
    int I
    {
        get;
        // uncomment the set accessor and declaration
        //set;
    }

    public static void Main()
    {  
        var example = new Example
        {
            I = 9   // CS0200
        };
    }
}

Untuk menetapkan ke properti atau 'property' pengindeks yang merupakan baca-saja, tambahkan aksesor set atau tetapkan nilai di konstruktor objek.

public class Example
{
    int I { get; }

    public Example()
    {
        I = -7;
    }
}