コンパイラ エラー CS1650

更新 : 2007 年 11 月

エラー メッセージ

静的読み取り専用フィールド '識別子' のフィールドへの割り当てはできません (静的コンストラクタまたは変数初期化子では可)

このエラーは、変更することのできない、読み取り専用の静的フィールドのメンバを変更しようとした場合に発生します。このエラーを解決するには、読み取り専用フィールドへの代入をコンストラクタまたは変数初期化子に限定するか、フィールドの宣言から readonly キーワードを削除します。

// CS1650.cs
public struct Inner
{
    public int i;
}

class Outer
{
    public static readonly Inner inner = new Inner();
}

class D
{
    static void Main()
    {
        Outer.inner.i = 1;  // CS1650
    }
}