我有一个 MVC 4 / Entity web 项目落入我的腿上,我以前从未使用过。我正在经历它,但简单的事情真的让我感到困惑——比如根据数据库中的参数在我的布局中隐藏或显示链接。
我在我的 HomeController 中创建了一个函数,它只是在 ViewBag 中设置 2 个布尔值来判断一个人是经理还是超级用户。我使用该函数调用该函数
@Html.Action("SetupViewBag", "Home")
它就<body>
在我的布局中的标签之后。这是 SetupViewBag 的代码:
public void SetupViewBag()
{
ViewBag.IsManager = ADAccess.IsManager(SessionManager.GetUserName());
ViewBag.IsSuper = SessionManager.SuperUser();
}
当我设置断点时,布尔值设置正确且顺序正确,但是当我尝试使用下面的代码访问它们时,我得到一个 'Cannot convert null to 'bool' 因为它是一个不可为空的值类型。 '
@{
if((bool)@ViewBag.IsManager){
<li>@Html.ActionLink("Management", "Management", "Home",null, new { id = "managementLink" })</li>
}
}
必须有一些非常简单的东西我错过了。任何帮助是极大的赞赏。