如果您在ASP.NET Core应用程序中使用ViewBag、ViewData或TempData,您可能会遇到它们全部为空的情况。这是因为这些对象必须在控制器动作中设置值后才能在视图中使用。
下面是一个在控制器动作中设置ViewBag和TempData的示例:
public IActionResult Index()
{
ViewBag.Message = "Hello World";
TempData["Message"] = "Hello Temp";
return View();
}
这里ViewBag和TempData存储的都是字符串“Hello World”和“Hello Temp”。然后,您可以在视图中使用以下代码访问它们:
@ViewBag.Message
@TempData["Message"]
另一方面,ViewData需要使用键值对进行设置和访问。例如:
public IActionResult Index()
{
ViewData["Message"] = "Hello ViewData";
return View();
}
在视图中,您可以通过键来访问ViewData:
@ViewData["Message"]
确保在控制器动作中设置ViewBag、ViewData或TempData的值,并在视图中访问它们。如果仍然遇到问题,请检查控制器动作和视图中的拼写错误。