我使用TempData在控制器之间传递数据。如果两个用户在同一页面上工作,User2将获取User1创建的tempdata值。
您可以在下面找到代码。
你能帮我解决这个问题。
VDRController.cs
public ActionResult RedirectToCDR(long VslMoveId, long VslVisitId, string VslNm, string ETDDtTmLoc, string statusCd)
{
//List<long> vslIds = new List<long>();
string vslIds = VslMoveId + "," + VslVisitId.ToString() + "," + statusCd;
TempData["VslMoveDetails"] = vslIds;
//DateTime MyDateTime;
//MyDateTime = new DateTime();
var strdatetime = Convert.ToDateTime(ETDDtTmLoc).ToString("dd-MMM-yyyy");
TempData["VslNameETD"] = VslNm + " " + strdatetime;
//return RedirectToAction("Index","VesselVisit");
return Json(Url.Action("Index", "CDR"));
}
CDRController.cs
public ActionResult Index()
{
if (TempData["VslMoveDetails"] != null)
{
string vslIds = TempData["VslMoveDetails"].ToString();
string[] Ids = vslIds.Split(new char[] { ',' });
if (Ids.Length == 3 && Ids[0] != null && Ids[1] != null)
{
ViewBag.VslMove_Id = Ids[0];
ViewBag.VslVisit_Id = Ids[1];
ViewBag.VisitStatus_Cd = Ids[2];
}
}
return View();
}
提前感谢。
答案 0 :(得分:0)
IIS正在缓存您的页面。对于MVC应用程序,您需要将.cshtml添加到不允许缓存的文件扩展名列表中。有关停止缓存的解决方案,请参阅以下链接。 (http://lionsden.co.il/codeden/?p=446)