ASP.NET MVC:发送信息以生成RedirectToAction

时间:2010-10-02 12:39:27

标签: asp.net-mvc-2 redirect

我需要在向新视图进行“RedirectToAction”之前发送数据,并且不希望通过“GET”发送数据。

我唯一能想到的是在重定向到新视图之前将这些信息保存在会话中,但我更愿意这样做。

感谢。

编辑宽度示例

public class AccountController : Controller
{
    public ActionResult Index()
    {
        return View();
    }

    public ActionResult Login()
    {
        return View(new LoginViewModel());
    }

    [HttpPost]
    public ActionResult Login(LoginViewModel model, string returnUrl)
    {
        if (LoginModel.Login(model)){

             UserData ud = UserData(model.IdUser);
             return RedirectToAction("Index", "Information");

        }

        // code
     }
}     

//

public class InformationController : Controller
{
    public ActionResult Index()
    {

        //receives "ud" information
        // ... 
        return View();
    }

}     

2 个答案:

答案 0 :(得分:1)

您可以将数据作为请求参数传递:

return RedirectToAction("Foo", new { param1 = "value1", param2 = "value2" });

答案 1 :(得分:0)

我不确定您要实现的目标,但TempData["yourkey"]可能就是您想要使用的内容。但这不是最好的做法。但是如果要重定向到某个操作,您希望将数据发送到哪里?