开发者

MVC3 Redirect to route from ActionResult

开发者 https://www.devze.com 2023-04-01 17:39 出处:网络
So I have a HttpPost only ActionResult called Edit. After doing its thing (logic etc), I want it to redirect to a different controller. Lets say the HomeController. Here it is:

So I have a HttpPost only ActionResult called Edit. After doing its thing (logic etc), I want it to redirect to a different controller. Lets say the HomeController. Here it is:

[HttpPost]
public ActionResult Edit(Chair chair, string xml)
{
    if (ModelState.IsValid)
    {
        try
        {
            _repository.EditChair(chair, xml);
            return RedirectToRoute(new { contoller = "Home", action = "index"});
        }
        catch (Exception ex)
        {
            //error msg for failed edit in XML file
            ModelState.AddModelError("", "Error editing record. " + ex.Message);
        }
    }
    return View(Chair);

}

Ive tryed other thin开发者_StackOverflow中文版gs like return RedirectResult(), RedirectToAction(), RedirectToRoute("string") - but it still keeps returning the index view from the controller the Edit method is in (ChairController).

Whats the right way to do this??


Typo:

contoller = "Home"

should be

controller = "Home"

or:

return RedirectToAction("index", "home");


Wow wierdest thing ever caused this. The code was correct (as I was sure of to begin with). I tryed to debug it once more, and noticed as I went through the code, that the debugger thingo only marked up some of the code: return RedirectToAction("Index", It actually stopped there, and didnt go through the "Home");. I also noticed that my breakpoint was actually yellow, and was telling me something about the source code was not identical with the original? The what what? It kept saying that through hundreds of saves, restarts, builds and rebuilds. Out of the blue it accepted the code, my breakpoint turned red, the code worked just fine.

Really sorry for waisting your time guys!

0

精彩评论

暂无评论...
验证码 换一张
取 消