2012-09-06 95 views
1

我是mvc的新手。不正确重定向mvc4

我正在开发使用mvc4移动模板的web应用程序。

我有控制器说:

控制器1

和两型

(GET,POST)的 动作:动作1,动作2,ACTION3

现在,假设我现在的网址:HTTP ://本地主机:12345 /控制器1 /动作1 我点击按钮来调用它的动作后,代码执行正确

[HttpPost] 
[ActionName("action1")] 
public ActionResult action1_post() 
{ 
    //some code here 
    return RedirectToAction("action2","controller2"); 
} 

但在浏览器中,它仍然显示了这个网址:的http://本地主机:12345 /控制器1 /动作1

我不明白这个..

谢谢!

回答

1

您必须将ActionName更改为其他名称。这就是为什么它仍然在url中显示为action1。如果您将其更改为action1post那么它应该改变。例如:

[HttpPost] 
[ActionName("action1post")] 
public ActionResult action1_post() 
+0

感谢答复,但如果我改变我的职务行为的签名像'公众的ActionResult动作1(GUID ID){...}'这个动作里面,它把代码重定向到**/controller2/action2 ** ...仍然会在浏览器地址栏中显示相同的URL ... ** http:// localhost:12345/controller1/action1 ** – david9

+0

您是否同时拥有controller2和action2?如果你确定你没有在之前的某个地方返回View,这会导致它停留在同一个视图上。否则,如果我尝试'返回RedirectToAction(“Index”,“Home”);'我总是被重定向到这个动作。 – Sone

+0

你确定..我调试了很多次的代码..控制达到**返回RedirectToAction(..)**声明 – david9