惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Hugging Face - Blog
Hugging Face - Blog
Google DeepMind News
Google DeepMind News
云风的 BLOG
云风的 BLOG
WordPress大学
WordPress大学
Vercel News
Vercel News
Apple Machine Learning Research
Apple Machine Learning Research
T
Tailwind CSS Blog
I
InfoQ
小众软件
小众软件
Recent Announcements
Recent Announcements
博客园 - 【当耐特】
The GitHub Blog
The GitHub Blog
大猫的无限游戏
大猫的无限游戏
美团技术团队
T
The Blog of Author Tim Ferriss
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
酷 壳 – CoolShell
酷 壳 – CoolShell
MongoDB | Blog
MongoDB | Blog
V
V2EX
J
Java Code Geeks
有赞技术团队
有赞技术团队
博客园 - 聂微东
B
Blog RSS Feed
博客园 - 司徒正美

博客园 - jerreychen

常用的JavaScript验证正则表达式 用CSS设置打印换页 向容器(PlaceHolder)中动态添加多个用户控件(UserControl) C#.Net中WinForm采用Active Directory进行身份认证 Windows XP 如何设置系统自动关机任务 - jerreychen DataList嵌套GridView实现文章分类列表显示(2) visual studio 2008 sp1中如何让WebBrowser控件可编辑 - jerreychen SQLite 数据库初学 学习笔记 - jerreychen - 博客园 如何将.xsd文件自动生成对象 ASP.NET页面事件:顺序与回传详解 读取自定义的config文件 - jerreychen - 博客园 Umbraco 设置Document Types 的默认值 格式化数据 Net支持gzip 压缩格式 压缩与解压 .net 序列化数据对象 .net 下,日期的格式化 太久太久没来了,久违了-博客园 showModelDialog 关闭后改变GridView某个单元格的值
使用Form认证实现用户登录 (LoginView的使用)
jerreychen · 2009-03-25 · via 博客园 - jerreychen

今天一个朋友(网友)初学.net的,问了我一个问题,他说想做一个用户登录的页面,看到Asp.net控件里面有个LoginView的控件,问我会不会用。我说会,然后他让我写一个Demo给他,让他学习下。

早上,因为忙碌,所以就没写了,让他自己找资料先学下,现在我就写个Demo,希望想学的人会有帮助。

创建一个WebSite,新建一个页面命名为SignIn.aspx,然后在页面中添加如下的代码,或者你可以直接拖控件到页面,不过我习惯了写代码了

Code

在LoginView控件里面 AnonymousTemplate 是用户没登录时候显示的内容, LoggedInTemplate 是用户登录后显示的内容,还有一个 RoleGroups 是控制角色相关的,这里就没了,因为不用;然后在AnonymousTemplate 里面设计登录asp:Login的Layout,好了代码就上面贴出来的。

Login控件有一个 OnAuthenticate 事件,那是在我们点击LoginButton的时候触发Command="Login"的事件

接下来我们写login_OnAuthenticate事件

Code

TrySignIn方法的实现,这里如果用户名不是"admin" 密码不是 "123" 则登录失败

Code

退出登录的方法

Code

这样,登录功能算是实现了,但是还不能正确运行起来,登录界面没有显示出来,因为Form认证的设置还没实现

打开Web.config文件,然后找到<authentication mode="Windows" ></authentication>节点,修改为

Code

现在你可以运行下,登录界面是出来了,但是样式没有了,首页也需要登录,这样不对,还需要设置首页和样式文件不需要进行认证,我们找到</system.web>,在它后面添加如下设置

Code

现在,我们运行下项目,Ok,安静了...

附:源代码