共用方式為


編譯器錯誤 CS1917

更新:2007 年 11 月

錯誤訊息

型別 'struct name' 的唯讀欄位 'name' 成員無法以物件初始設定式進行指派,因為它是實值型別

屬於實值型別 (Value Type) 的唯讀欄位只能透過建構函式 (Constructor) 指派。

若要修正這個錯誤

  • 將結構 (Struct) 變更為類別型別。

  • 以建構函式初始化此結構。

範例

下列程式碼會產生 CS1917:

// cs1917.cs
class CS1917
{
    public struct TestStruct
    {
        public int i;
    }
    public class C
    {
        public readonly TestStruct str = new TestStruct();
        public static int Main()
        {
            C c = new C { str = { i = 1 } }; // CS1917
            return 0;
        }
    }
}