簡體   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