2010-09-26 39 views
0

我有以下即接受表单提交代码asp.net的MVC - 返回查看不火的代码...网址错

 [ActionName("TestingTemp"), AcceptVerbs(HttpVerbs.Post)] 
     public ActionResult TestingTemp(FormCollection result) 
     { 
      string cat = ""; 
      return View("Try"); 
     } 

现在的问题是,即使它似乎加载“尝试“页面,因为它不会触发下面的代码(如果我直接进入”尝试“页面,它会得到正确的启动),因此页面上的内容会中断。

 public ActionResult Try() 
     { 
      ViewData["Test"] = DataLayer.Test(0, 10); 
      return View(); 
     } 

此外,url包含TestingTemp它应该包含的地方Try如果你知道我的意思。

回答

3

我认为你要找的是RedirectToAction。它会重定向到其他方法并重写URL。

[ActionName("TestingTemp"), AcceptVerbs(HttpVerbs.Post)] 
    public ActionResult TestingTemp(FormCollection result) 
    { 
     string cat = ""; 
     return RedirectToAction("Try"); 
    } 
0

的首选方法是使用redirectToAction但如果ü不希望走那条路那么u必须把需要的数据是乌拉圭回合中尝试的方法做这样

[ActionName("TestingTemp"), AcceptVerbs(HttpVerbs.Post)] 
     public ActionResult TestingTemp(FormCollection result) 
     { 
      string cat = ""; 
      ViewData["Test"] = DataLayer.Test(0, 10); 
      return View("Try"); 
     } 

,但正如我所说的这方式是不优选的,即在每个动作中重复乌尔代码,而不是你可以只写类似

[ActionName("TestingTemp"), AcceptVerbs(HttpVerbs.Post)] 
    public ActionResult TestingTemp(FormCollection result) 
    { 
     string cat = ""; 
     return RedirectToAction("Try"); 
    }