'Tempdata'在当前上下文中不存在

问题描述 投票:2回答:2

我正在尝试将某个控制器的某些值传递给另一个控制器,例如

TempData["data"]="data";

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

我读到它,它与BaseController有关。所以我真的必须从basecontroller派生使其起作用吗?

c# asp.net-mvc viewbag tempdata
2个回答
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希望对您有所帮助


-2
投票

您的控制器必须从Controller而不是ControllerBase派生!! >>

© www.soinside.com 2019 - 2024. All rights reserved.