在 C# 14 中添加的上下文关键字 field可用于属性访问器,以访问属性的编译器合成后盾字段。 使用此语法可以定义或get访问器的主体set,并允许编译器在自动实现的属性中生成另一个访问器。
添加 field 上下文关键字提供了一个流畅的路径,用于向自动实现的属性添加范围检查等优势。 以下示例显示了这种做法:
class TimePeriod4
{
public double Hours {
get;
set => field = (value >= 0)
? value
: throw new ArgumentOutOfRangeException(nameof(value), "The value must not be negative");
}
}
可以将该 Hours 属性实现为自动实现的属性。 然后,你发现你想要防范负值。
field在访问器中使用set并提供范围检查。 无需手动声明后备字段并为访问器提供主体 get 。
C# 语言规范
有关详细信息,请参阅 C# 语言规范。 该语言规范是 C# 语法和用法的权威资料。