本文介紹 C#6.0 Getter Only Property
蠻可惜 Primary Constructor 最後沒有被加到 C#6.0之中
環境: Visual Studio 2015
當新增一個 Employee Class時,可以在建構子中先輸入屬性的Assign,按下 Ctrl + . ,
它會出現一個燈泡,提示我們可以做那些事項,建立屬性、變數 ...,而且還有 Preview 視窗哦。如下,
public class Employee
{
public Employee(string firstName, string lastName)
{
FirstName = firstName;
LastName = lastName;
DateOfJoining = DateTime.UtcNow;
}
public DateTimeOffset DateOfJoining { get; private set; }
public string FirstName { get; private set; }
public string LastName { get; private set; }
}
在上面的建構子中的 DateOfJoining 的初始值,並不需要從參數來,所以可以不用寫建構子之中。
而且,如果這個值物件建立後,就不允許修改的話,可以將private set 拿掉,直接在屬性後面設定,如下,
public DateTimeOffset DateOfJoining { get;} = DateTime.UtcNow; //Getter Only Property
參考資料
Simplifying Classes with C# 6.0
Getter Only Auto-properties in C# 6.0
Hi,
亂馬客Blog已移到了 「亂馬客 : Re:從零開始的軟體開發生活」
請大家繼續支持 ^_^