asp.net webform或者MVC如何判断是否登录呢?

baidu_27346167 2015-05-12 05:18:17
就像百度,或者CSDN,右上角,如果登录了的就显示账号名,等级,消息。 如果没有登录的就显示登录。并且在很多地方也进不了……

==============================================
身份验证感觉找不到个标准的来参考。 我只看过WEBform的教程,而且很简单,就是每次页面LOAD事件都比对一次COOKIES或SESSION。。。。。但我看到微软MVC2.0写的那个DEMO小MVC网站,它的验证是这种写法
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl" %>
<%
if (Request.IsAuthenticated) {
%>
欢迎您,<b><%: Page.User.Identity.Name %></b>!
[ <%: Html.ActionLink("注销", "LogOff", "Account") %> ]
<%
}
else {
%>
[ <%: Html.ActionLink("登录", "LogOn", "Account") %> ]
<%
}
%>

我就搞不懂了……特别是Request.IsAuthenticated 完全看不明白。。。。

===========================
所以,我一直找不到一个标准的写法……求大神指点迷津
...全文
134 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
baidu_27346167 2015-05-12
  • 打赏
  • 举报
回复
引用 3 楼 starfd 的回复:
这个是身份验证相关类
System.Security.Principal.IIdentity
System.Security.Principal.IPrincipal
MVC的Controller里面有这么一个属性
//
        // 摘要: 
        //     取得目前 HTTP 要求的使用者安全性資訊。
        //
        // 返回结果: 
        //     目前 HTTP 要求的使用者安全性資訊。
        public IPrincipal User { get; }
虽然没研究过,但这个应该是跟webform一致的,猜测也是为System.Web.HttpContext.Current.User赋值,然后Controller类里面从System.Web.HttpContext.Current.User获取IPrincipal,然后什么时候赋值的呢,应该是通过注册的身份验证Attribute
对了,它的LOGIN的CONTROLLER的方法里面能接受MODEL的参数,这个我也不太明白到底是为什么了? 感觉我现在所学的跟微软缩写的差距好大呀……我都不知所措了…… 外面的企业里面是怎么做的呢?
  • 打赏
  • 举报
回复
这个是身份验证相关类
System.Security.Principal.IIdentity
System.Security.Principal.IPrincipal
MVC的Controller里面有这么一个属性
//
        // 摘要: 
        //     取得目前 HTTP 要求的使用者安全性資訊。
        //
        // 返回结果: 
        //     目前 HTTP 要求的使用者安全性資訊。
        public IPrincipal User { get; }
虽然没研究过,但这个应该是跟webform一致的,猜测也是为System.Web.HttpContext.Current.User赋值,然后Controller类里面从System.Web.HttpContext.Current.User获取IPrincipal,然后什么时候赋值的呢,应该是通过注册的身份验证Attribute
baidu_27346167 2015-05-12
  • 打赏
  • 举报
回复
引用 1 楼 starfd 的回复:
这个是写了相关方法将身份部分赋给微软提供的身份验证模块
就是没看懂 在哪部分代码决定的……我的是MVC2.0
  • 打赏
  • 举报
回复
这个是写了相关方法将身份部分赋给微软提供的身份验证模块

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧