在当前的背景下,'Tempdata'不存在

时间:2016-02-03 06:26:46

标签: c# asp.net-mvc viewbag tempdata

我试图将一些值从一个控制器传递到另一个像

这样的东西
TempData["data"]="data";

但它说Tempdata在当前上下文中不存在。所以我决定使用ViewBag,令人惊讶的是,我得到了ViewBag的相同错误信息。

我读过它并且它与BaseController有关。所以我真的必须从basecontroller派生才能使它工作?

1 个答案:

答案 0 :(得分:0)

您的控制器必须从BaseController开始执行。您可以使用TempData[""]将消息从一个控制器传递到另一个控制器。这是一个可以帮助你的代码

namespace namespaceName.Controllers
{
    public class ControllerName : Controller
    {
        public ActionResult firstController()
        {
            var data = TempData["data"].ToString();
        }
        public ActionResult secondController()
        {
            TempData["data"] = "data";
            return RedirectToAction("firstController");
        }
    }
}

TempData["data"] = "data"将从firstController传递到secondController 希望这有帮助