问题描述
当欢迎页面刷新时,tempData 值丢失。我已经对用户登录(管理员登录)进行了检查,并相应地隐藏/显示了一个元素。例如,如果用户类型为 1(全局管理员),则在欢迎页面上显示“管理员管理”链接,否则将其隐藏。我正在使用 tempData 存储“类型”,它在登录时按预期工作,但如果我刷新欢迎页面,则会引发此错误:请帮助
我的逻辑
public ActionResult Login()
{
ViewBag.Message = "Your Login page.";
return View();
}
[HttpPost]
public ActionResult Login(tbl_Admin adminObj)
{
studentDBEntities db = new studentDBEntities();
var adminvar = db.tbl_Admin.Where(x => x.Email == adminObj.Email && x.Password == adminObj.Password).FirstOrDefault();
if (adminvar != null)
{
if (adminvar.Type== true)
{
TempData["IsGlobalAdmin"] = true;
return RedirectToAction("Welcome");
}
else
{
TempData["IsGlobalAdmin"] = false;
return RedirectToAction("Welcome");
}
}
else
{
return View();
}
}
public ActionResult Welcome()
{
ViewBag.Message = "Welcome Admin - Admin Account Page";
return View();
}
我的观点
@model IEnumerable<StudentReg.tbl_Admin>
<div class="well">
<center><h4><b>Navigate To: </b></h4></center>
@if ((bool)TempData["IsGlobalAdmin"])
{
<center><p>@Html.ActionLink("Admin Management","ListAdmin")</p></center>
}
<center><p>@Html.ActionLink("Student Management","ListStudent")</p></center>
</div>
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)