我收到以下错误:
An unhandled exception of type 'System.StackOverflowException'
occurred in ciscontrols.dll
以下是相关代码:
private int Dval;
public int DecPlaces
{
get { return Dval; }
set
{
DecPlaces = value;
if (value < 2)
{
throw new ArgumentOutOfRangeException("decplaces", "decimal places minimum value should be 2.");
}
else this.Dval = value;
}
}
答案 0 :(得分:2)
在代码中查看我的评论 -
private int Dval;
public int DecPlaces
{
get { return Dval; }
set
{
//DecPlaces = value; **** This is calling set method again, hence the exception. Just comment this line
if (value < 2)
{
throw new ArgumentOutOfRangeException("decplaces", "decimal places minimum value should be 2.");
}
else this.Dval = value;
}
}
答案 1 :(得分:1)
您正在调用Set Property Infinite Manner
DecPlaces = value;
使用一些局部变量来执行此操作。
int m= value;
答案 2 :(得分:0)
这是你的问题:
DecPlaces = value;
你是自我引用的。你一直打电话给你的二传手。只需删除该行就可以了。