public class ModelInfo
{
public int AssignedCount { get; set; }
public int UnassignedCount { get; set; }
public int TotalCount { get { return UnassignedCount + TotalCount; } }
}
Run Code Online (Sandbox Code Playgroud)
*编辑:* 我意识到当我把这个代码放在SO中时,TotalCount属性正在添加UnassignedCount + TotalCount(我的意思是将其他两个计数加在一起).有人可以提供一个足够的解释为什么SO错误发生?我的意思是,低级别的东西.
Stackoverflowing!
Mat*_*hew 13
你是TotalCount从内部打电话TotalCount,不要那样做.
您可以使用另一个字段来代替该属性的值.
虽然,我怀疑你的代码应该是:
public int TotalCount { get { return UnassignedCount + AssignedCount ; } }
Run Code Online (Sandbox Code Playgroud)
编辑:至于为什么发生堆栈溢出,这是因为当您使用属性时,.NET编译器实际上将生成2个函数,set_PropertyName并且get_PropertyName.所以在essense中,它会导致get_PropertyName方法调用的堆栈溢出变得无限深.
| 归档时间: |
|
| 查看次数: |
745 次 |
| 最近记录: |