我知道C#operator =>是lambda operator。但今天我遇到了以这种方式使用的运营商:
static readonly ResourceDictionary ResourceDictionary = new ResourceDictionary();
public static ResourceDictionary MyAppResources => ResourceDictionary;
这里似乎没有作为lambda运算符运行。任何人都可以告诉我这个操作员在使用时做了什么吗?
答案 0 :(得分:5)
=>
在这种情况下并不是一个真正的运算符,因为它没有在表达式中使用。这是用于定义表达式 - 身体属性的新C#6语法,相当于
public static ResourceDictionary MyAppResources {
get {
return ResourceDictionary;
}
}
在旧语法中。您也可以编写表达式方法,例如
public string ToString() => $"User [{FirstName} {LastName}]";
而不是
public string ToString() {
return string.Format("User [{0} {1}]", FirstName, LastName);
}