我想在user.cs模型中覆盖getter和setter方法,但它不起作用,尝试登录时出现错误,当我尝试不覆盖时,它运行正常。
public string UserPassword
{
get { return this.UserPassword; }
set { this.UserPassword = value; }
}
当我尝试登录时,出现此错误:
在PMS.dll中发生了'System.StackOverflowException'类型的未处理异常
请检查屏幕截图。
答案 0 :(得分:3)
StackoverFlow异常:这通常意味着您在代码中有一个递归调用。递归只是一种调用 本身,导致堆栈溢出并抛出StackoverFlow 例外
在您的情况下,UserPassword
属性以递归方式对其自身进行调用,从而导致堆栈溢出。
您需要像下面那样更改属性。
public string UserPassword
{
get;
set;
}
或类似
string _userPassword;
public string UserPassword
{
get { return _userPassword; }
set { _userPassword = value; }
}