自動實作的屬性 (C# 程式設計手冊)
更新:2007 年 11 月
自動實作屬性讓屬性宣告更為簡明,而且在屬性存取子 (Accessor) 中也不需要額外的邏輯。當您宣告如下列範例所示的屬性時,編譯器便會建立私用 (Private) 的匿名支援欄位,讓您只能透過屬性的 get 和 set 存取子來進行存取。
範例
下列範例顯示具有一些自動實作屬性的簡單類別:
class LightweightCustomer
{
public double TotalPurchases { get; set; }
public string Name { get; private set; } // read-only
public int CustomerID { get; private set; } // read-only
}
自動實作屬性都必須宣告 get 和 set 存取子。若要建立 readonly 自動實作屬性,請提供 private set 存取子。
自動實作的屬性 (Property) 可以有屬性 (Attribute),但支援欄位顯然不能,因為無法從原始程式碼存取那些欄位。如果您必須在屬性 (Property) 的支援欄位上使用屬性 (Attribute),只要建立一般屬性 (Property) 即可。