我有几个实体,它们有计算字段,如TotalCost.现在我把它们作为属性,但我想知道它们是否应该是方法.这有C#标准吗?
public class WorkOrder
{
public int LaborHours { get; set; }
public decimal LaborRate { get; set; }
// Should this be LaborCost()?
public decimal LaborCost
{
get
{
return LaborHours * LaborRate;
}
}
}
Run Code Online (Sandbox Code Playgroud)
Cel*_*ish 15
我认为方法应该对对象执行操作,通常会更改对象的状态.即使计算属性,属性也应反映对象的当前状态.所以你应该保持你的财产IMO.
我认为他们应该都是财产.只要它不改变对象的状态,我就把它作为一个属性来酷.
另外,如果我使用你的类进行数据绑定(WPF等),那么我可以直接绑定到你的属性而无需修改/扩展类.