Response.RedirectToRoute指定了一个动作

时间:2010-01-08 21:23:54

标签: asp.net-mvc routing

我希望重定向到路线,但也指定在该路线的控制器上运行的动作。

我试过了:

Response.RedirectToRoute("Login", new { action = "ChangePassword" });

动作如下:

public ActionResult ChangePassword()
{}

路线如下:

routes.MapRoute("Login", "Login/{action}", new { controller = "Login", 
action = "Index" } );

我得到的错误是:

System.NotImplementedException:未实现方法或操作。

你能看出我做错了吗?

3 个答案:

答案 0 :(得分:9)

我也很难过。我这样做了

Response.Redirect(Url.RouteUrl(new{ controller="controller", action="action"}));

答案 1 :(得分:0)

嗯,只有当某些东西抛出它时你才会得到NotImplementedException。所以看看堆栈跟踪(Call Stack)并找到抛出它的例程。例如,当VS自动实现一个接口时,正文会抛出这个;你应该取代实施。

答案 2 :(得分:-2)

return Redirect(Url.RouteUrl(new { controller = "Controller", action = "Action" }));