传递复杂类型参数并在MVC中设置默认值操作?

时间:2019-01-01 09:27:20

标签: c# asp.net-mvc-5

我的复杂类型模型:

public class User
{
    public string name {set{name=value;}get{return name??"";}}
}

我的MVC操作:

public JsonResult GetUser(User user)
{
   //do something
}

然后在这里错了:

“System.StackOverflowException”

我该怎么做才能正确?

谢谢!〜

3 个答案:

答案 0 :(得分:2)

设置了错误的名称{name = value;},这再次调用了setter。您应该创建一个单独的属性,并在setter和getter中使用它。

答案 1 :(得分:1)

public class User
{
   private string _name;

    public string name {set{_name=value;}get{return _name??"";}}
}

答案 2 :(得分:0)

此处的Stackoverlow例外是,当值设置为属性时,该设置方法会将值设置为自身。

我虽然很明显,但编译器可以检查这一点。

public string name {set{name=value;}get{return name??"";}}