我有一个带有属性的C#类,我最终在这个类中使用了另一个类中List类型的集合。
我想要做的只是始终将Type属性设置为有价值" 3"
应该/可以使用getter / setter完成,还是应该使用System.Component.DefaultValue ....属性
public class ReportDefinition
{
public int Id { get; set; }
public string ReportGroupNameDef { get; set; }
public int SortOrder { get; set; }
public int ReportGroupId { get; set; }
[System.ComponentModel.DefaultValue(3)]
public int Type { get; set; }
}
我认为我不希望以这种方式使用[System.ComponentModel.DefaultValue(3)]
答案 0 :(得分:0)
您可以使用只读属性,并返回私有字段的值,或者只是在NSJSONSerialization
中返回您想要的值。
get
答案 1 :(得分:0)
我不希望得到或偷走现有的选定答案,但我确实希望帮助澄清我正在阅读的一些评论。
是的确,最好的清洁方式是自动属性public int Type { get; } = 3;
- 警告是C#6
没有自动属性的另一个C#6将是表达主体
private int m_type = 3;
public int Type => m_type;
但是如果你想要使用Linqpad 4,那么选择的答案是"罚款"
private int m_type = 3;
public int Type
{
get
{
return m_type;
}
}