不确定我的措辞是否正确......但我有以下代码:
public Guid ItemId
{
get;
}
public TransactionItem()
{
this.ItemId = Guid.Empty;
}
当然,我遇到的是只读问题……我确实理解。无论如何设置此属性值而不必执行以下操作:
Guid _itemId = Guid.Empty;
public Guid ItemId
{
get
{
return _itemId;
}
set
{
_itemId = value;
}
}
或
public Guid ItemId
{
get;
internal set;
}
提前致谢!
最佳答案
我会这样做:
public Guid ItemId
{
get;
private set; // can omit as of C# 6
}
public TransactionItem()
{
this.ItemId = Guid.Empty;
}
当然,它可以在这个类中设置,但是既然你正在写它,我希望你有意识,不要违背自己的意图......
在我看来,从外部来看,诸如只读属性之类的东西最为重要。从内心看,它是什么并不重要,因为在那里,你就是国王 =)
关于c# - 如何使用通用的 getter 和 setter 设置只读属性的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/565075/