Asp.net mvc 3 保存到会话并在单击按钮时重定向
A有一个简单的网站,有4个视图(个人信息、邮局、订单详细信息、评论)。所有视图都强类型化为名为Information的模型。我需要做的是:Asp.net mvc 3 保存到会话并在单击按钮时重定向,asp.net-mvc-3,Asp.net Mvc 3,A有一个简单的网站,有4个视图(个人信息、邮局、订单详细信息、评论)。所有视图都强类型化为名为Information的模型。我需要做的是: 当我在PersonalInfo视图中单击Next按钮时,我需要将一些数据存储到会话中 之后,我必须被重定向到下一个视图OrderDetails 下面是我如何试图解决这个问题的一个例子,但它不起作用 控制器: public ActionResult PersonalInfo(string button, Models.Information FirstNa
- 当我在PersonalInfo视图中单击Next按钮时,我需要将一些数据存储到会话中
- 之后,我必须被重定向到下一个视图OrderDetails
public ActionResult PersonalInfo(string button, Models.Information FirstName, Models.Information LastName)
{
if (button == "Next")
{
HttpContext.Session["FirstName"] = FirstName;
HttpContext.Session["LastName"] = LastName;
return RedirectToAction("PostOffice", "Home");
}
else if (button == "Back")
{
return RedirectToAction("OrderDetails", "Home");
}
return View();
}
视图中的按钮:
<div>
<button name="button" value="Next">Next</button>
<button name="button" value="Back">Back</button></div>
听起来您甚至没有生成请求来访问您的
PersonalInfo
操作
让你的按钮改为提交按钮
<input type="submit" name="button" value="Prev" />
<input type="submit" name="button" value="Next" />
最后,由于您正在进行多步骤表单处理,因此可能会对您有所帮助。它是如何工作的?无论单击哪个按钮,都不会发生重定向。我不确定会话tho中是否存储了某些内容。而且所有验证字段都标记为红色,即使我是第一次访问该网站并且没有键入任何内容。您是否使用调试器访问
PersonalInfo
操作?你的按钮有javascript来触发动作吗?我通过索引站点上的菜单访问PersonalInfo。页面显示正确。不,我不使用javascript。难道没有任何方法可以使用控制器吗?我会使用TempData,但我的作业需要使用Session。我只能在表单处理的最后一个步骤中使用TempData,在该步骤中,我在一个视图中显示所有信息。除此之外,还有很多有用的信息。非常感谢。
<input type="submit" name="button" value="Prev" />
<input type="submit" name="button" value="Next" />
TempData["FirstName"] = FirstName;
TempData["LastName"] = LastName;