영어로 읽기

다음을 통해 공유


컴파일러 오류 CS0200

'property' 속성 또는 인덱서는 읽기 전용이므로 할당할 수 없습니다.

property에 값을 할당하려고 했지만 속성에 set 접근자가 없거나 할당이 생성자 외부에 있었습니다. set 접근자를 추가하여 오류를 해결합니다. 자세한 내용은 읽기-쓰기 속성 선언 및 사용 방법을 참조하세요.

예제

다음 샘플에서는 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
    }
}  

다음 샘플에서는 자동으로 구현된 속성개체 이니셜라이저를 사용하며 여전히 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
        };
    }
}

읽기 전용인 속성 또는 인덱서 'property'에 할당하려면 set 접근자를 추가하거나 개체 생성자에 값을 할당합니다.

public class Example
{
    int I { get; }

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