繁体   English   中英

如何使用会话,asp.net MVC4中的Tempdata

[英]How to use sessions,Tempdata in asp.net mvc4

我正在使用mvc 4 architectute在asp.net上工作。 在这里,我有两个控制器Display和SessionEx。 在显示控制器中,我有如下方法

public ActionResult SessionExample()
{
    TempData["FortheFullRequest"] = "FortheFullRequest";

    string v = Session["Session1"].ToString();

    ViewData["Myval"] = "ControllertoView";

    ViewBag.MyVal = "ControllertoView";

    Session["Testing1"] = "Testing Session";

    return RedirectToAction("SomeOtherAction", "SessionEx");
}

在SessionEx控制器中,我具有以下方法

public ActionResult SomeOtherAction()
{
    string str1 = Convert.ToString(Session["Testing1"]);
    string str2 = Convert.ToString(TempData["FortheFullRequest"]);

    return View();
}

我正在调试该项目,并且还使用了手表来观察tempdata和会话中的阻塞。 首先在session和tempdata中都设置适当的值,但是当光标到达RedirectToAction方法时,所有值都存储在session中,并且tempdata变为null。请在这里帮助我。

如果要存储在重定向到其他操作方法后将要使用的数据,请使用Session

如本this SO question所讨论的,TempData主要用于一次性的短期请求

重定向到SomeOtherAction()后,您可能会发现TempData中的数据不存在,这是通过设计TempData工作方式来实现的。

老实说,我从不使用TempData,我自己也看不到重点。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM