mic*_*dck 8 asp.net-mvc session-variables asp.net-mvc-4
我用PHP写了很多网站.现在,我必须使用ASP MVC 4(c#)创建网站,我被Sessions困住了.
IE用户应该登录页面,输入他/她的登录名和密码.如果它们是正确的,在控制器中,我用UserId设置会话,如下所示:
Session["UserId"] = 10
Run Code Online (Sandbox Code Playgroud)
此UserId值用于显示PartialViews(登录表单或(登录后)某些应用程序菜单).如何在Razor视图中获取此UserId?
在此之后:
if (Session.UserId == 10) { @Html.Partial("LoggedMenu") }
Run Code Online (Sandbox Code Playgroud)
我有StackOverflow的例外.:/
bal*_*dre 14
你这样做是错的...
Session[<item name>]返回一个字符串,你也应该与一个字符串进行比较,或者转换它,所以,(int)Session["UserId"] == 10或者Session["UserId"] = "10".
您还调用了一个不存在的属性Session.UserId将不存在因为Session就像是一个NameValueCollection中,您可以通过请求调用它是项目名称.
最后,你应该写
@if (Session["UserId"] == "10") {
Html.Partial("LoggedMenu");
}
Run Code Online (Sandbox Code Playgroud)
你说你正在学习,所以我想指出2个快速的事情:
| 归档时间: |
|
| 查看次数: |
90748 次 |
| 最近记录: |