如何定位记录 class 的属性?
How do I target attributes for a record class?
定义记录class时,如何将属性定位到参数、字段或属性?
例如,我想使用 JsonIgnore
但这不会编译,因为它对字段或 属性:
有属性使用限制
record Person(string FirstName, string LastName, [JsonIgnore] int Age);
要定位扩展的各个部分 class,请使用适当的属性目标。例如:
// Target the property, use `property`
record Person(string FirstName, string LastName, [property: JsonIgnore] int Age);
// Target the backing field of the property, use `field`
record Person(string FirstName, string LastName, [field: JsonIgnore] int Age);
// Target the constructor parameter, use `param`
record Person(string FirstName, string LastName, [param: SomeParamAttribute] int Age);
定义记录class时,如何将属性定位到参数、字段或属性?
例如,我想使用 JsonIgnore
但这不会编译,因为它对字段或 属性:
record Person(string FirstName, string LastName, [JsonIgnore] int Age);
要定位扩展的各个部分 class,请使用适当的属性目标。例如:
// Target the property, use `property`
record Person(string FirstName, string LastName, [property: JsonIgnore] int Age);
// Target the backing field of the property, use `field`
record Person(string FirstName, string LastName, [field: JsonIgnore] int Age);
// Target the constructor parameter, use `param`
record Person(string FirstName, string LastName, [param: SomeParamAttribute] int Age);