我可以有一个名为"View"的ActionResult吗?

ric*_*ott 6 c# asp.net-mvc asp.net-mvc-3 asp.net-mvc-2

码:

public ActionResult View(string id)
{ 
   return View();
}
Run Code Online (Sandbox Code Playgroud)

我这样做时,我目前得到stackoverflow异常.

Jac*_*cob 14

你应该得到一个编译器警告,你的View掩码定义是基本控制器类的那个,你应该明确地使用new关键字.如果您改变代码来执行此操作,它应该按照您的意愿工作:

return base.View();
Run Code Online (Sandbox Code Playgroud)


Dar*_*rov 6

当然,不要递归地称呼自己:

public new ActionResult View()
{
    return base.View();
}
Run Code Online (Sandbox Code Playgroud)