有人能否解释或提供一个页面的链接,该页面以laens术语描述自动属性是什么(与LINQ有关)
自动属性 - 最好称它们为"自动实现的属性",是最新 C# 版本中添加的新语法糖,正如一些评论指出的那样。
它包含一个属性,该属性声明其访问器而不带主体,C# 编译器为您创建相应的私有字段:
public string Name
{
get;
set;
}
请注意,这不是抽象成员,否则它会用适当的属性"abstract"标记!
除此之外,这些访问器作为非自动实现的访问器,可以具有可见性属性:私有、内部、公共(默认行为):
public string Name
{
private get;
internal set;
}
下面是 C# 3.0 中的一个自动属性:
public class Person
{
public string FirstName { get; set; }
public string LastName { get; set; }
}
与非自动属性相比:
public class Person
{
string _FirstName;
string _LastName;
public string FirstName
{
get { return _FirstName; }
set { _FirstName = value; }
}
public string LastName
{
get { return _LastName; }
set { _LastName = value; }
}
}
这是Dan Wahlin关于自动属性的帖子,我从那里得到了上面的代码。
参考以下内容:
自动实现的属性
在 LINQ 中使用自动属性