-2
protected override IEnumerable<string> Attributes => new []
{
IntercationAttributes.State
};
有人可以解釋我在這裏發生了什麼。爲什麼我們有了lambda表達式的新[]。我第一次看到它。使用新的[]與lambda
protected override IEnumerable<string> Attributes => new []
{
IntercationAttributes.State
};
有人可以解釋我在這裏發生了什麼。爲什麼我們有了lambda表達式的新[]。我第一次看到它。使用新的[]與lambda
這不是一個匿名方法(a.k.a. lambda表達式),而是一種以更簡潔的方式編寫計算屬性的方法。這是完全等同於
protected override IEnumerable<string> Attributes {
get { return new [] { IntercationAttributes.State };
}
正如你所看到的,形式
<property> { get { return <expression>; } }
的只讀屬性可以寫成
<property> => <expression>;
在C#6,圍繞減少語法該聲明有點。
很酷非常感謝您的解釋 –