对不起,这是一个愚蠢的问题,只是从书中学习,我看到了以下代码:
public IConfiguration Configuration { get; }
public Startup(IConfiguration configuration)
{
Configuration = configuration;
}
我的问题是这是如何工作的?没有set;
,我们正在为该属性分配一个值。
答案 0 :(得分:5)
这被称为“自动实现的属性”(简称“自动属性”),因为没有定义“支持字段”(或获取访问器逻辑),因此编译器会自动创建一个支持字段。 / p>
仅具有get访问器的属性(“自动”或其他属性)是只读属性。
可以在构造函数中设置(初始化)只读的auto属性,如图所示。
自动属性也可以在声明时初始化:
public IConfiguration Configuration { get; } = [some IConfiguration];