日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
ASP.NET登陸控件的簡單用法

ASP.NET登陸控件比較多,封裝了大部分WEB應(yīng)用中要實現(xiàn)系統(tǒng)登陸的系列功能,涉及到很多方面,本文將簡單介紹一下它們的主要功能。

成都創(chuàng)新互聯(lián)公司咨詢熱線:18980820575,為您提供成都網(wǎng)站建設(shè)網(wǎng)頁設(shè)計及定制高端網(wǎng)站建設(shè)服務(wù),成都創(chuàng)新互聯(lián)公司網(wǎng)頁制作領(lǐng)域十載,包括成都混凝土攪拌罐等多個行業(yè)擁有多年的網(wǎng)站推廣經(jīng)驗,選擇成都創(chuàng)新互聯(lián)公司,為企業(yè)錦上添花。

ASP.NET 2.0中,新增了許多新的功能和控件。其中,新增的登陸控件可謂使得WEB應(yīng)用的設(shè)計更加得心應(yīng)手。什么是登陸控件呢?就是我們平常在WEB應(yīng)用中經(jīng)常要用到的用戶注冊,登陸,忘記密碼,登陸后根據(jù)權(quán)限的不同而顯示不同的頁面等功能,現(xiàn)在在ASP.NET 2.0中都已經(jīng)可以由提供的控件來實現(xiàn)了。ASP.NET登陸控件比較多,封裝了大部分WEB應(yīng)用中要實現(xiàn)系統(tǒng)登陸的系列功能,涉及到很多方面,本文將簡單介紹一下它們的主要功能。

首先,ASP.NET2.0中,為了更方便創(chuàng)建和管理用戶,以及對 Web 應(yīng)用程序中的頁進行密碼保護,引進了新的框架membership。新的框架包含用于處理身份驗證和授權(quán)的新增功能,能夠同時滿足 Web 站點管理員和開發(fā)人員的需要。Web 站點管理員可以利用新的 Web 站點管理工具來創(chuàng)建新的用戶和角色,以及控制對 Web 應(yīng)用程序中頁面的訪問。Web 站點管理工具是一組預(yù)先編寫的 ASP.NET 2.0頁,不具備編程技巧的用戶可以使用它們來配置 Web 應(yīng)用程序。利用membership API,編程人員可以很方便地使用拖拉控件的方法,再加以少量的代碼,就可以完全實現(xiàn)對用戶,角色權(quán)限等的管理,還可以自定義做擴充。

其中,membership框架中包含了兩個默認(rèn)的用戶驗證程序:默認(rèn)的 AccessMembershipProvider以及 SqlMembershipProvider。如果希望在 Microsoft SQL Server 數(shù)據(jù)庫中存儲成員身份信息,則可以將應(yīng)用程序配置為使用 SqlMembershipProvider,如果要使用access數(shù)據(jù)庫,則使用AccessMembershipProvider。還可以創(chuàng)建自定義成員身份提供程序。例如,如果需要在 XML 文件、或 Oracle 數(shù)據(jù)庫中存儲成員身份信息,希望創(chuàng)建自己的成員身份提供程序,則需要實現(xiàn)抽象類MembershipProvider 的所有方法和屬性。本文中,將以access數(shù)據(jù)庫為例子做說明,所以使用Accessmembershipprovider。

我們可以使用ASP.NET2.0自帶的WEB站點安全配置工具,就可以無需編程,在系統(tǒng)向?qū)У膸ьI(lǐng)下,自動建立一個存儲用戶角色身份的數(shù)據(jù)庫了。比如,我們現(xiàn)在需要建立一個access的數(shù)據(jù)庫,里面存儲用戶名,密碼,密碼提示問題,用戶EMAIL等資料,則可以通過web站點安全配置工具來實現(xiàn)。步驟如下:

1)先使用visual studio express 2005建立一個WEB站點,命名為Dorknozzle,使用VB.NET語言,之后,我們點選Visual studio express中的WebSite菜單中的ASP.NET 2.0 Configuration,這時會彈出一個新的頁面窗口,其中選擇Security選項,如下圖:

2) 從上圖可以看到,安全設(shè)置選項被分為三部分:用戶,角色和規(guī)則。由于我們是***次配置,選擇“To configure security step by step, use the Security Setup Wizard”,在出現(xiàn)的界面點“NEXT”進入下一步。

在第二步中,你可以選擇驗證的類型,比如你的站點是發(fā)布在internet還是intranet,再點next進入下一步,系統(tǒng)會提示目前是使用AspnetAccessProvider ,繼續(xù)點下一步,系統(tǒng)會詢問是否創(chuàng)建基于角色的應(yīng)用,如果應(yīng)用中要用到角色,就必須將那個單選框打勾,本文不選擇該項,繼續(xù)下一步。

3) 此時,系統(tǒng)會詢問我們輸入創(chuàng)建用戶的信息,如下圖,比如輸入用戶名,密碼,EMAIL等信息。在輸入后,點NEXT進入下一步。

4)系統(tǒng)會允許你對某一用戶進行有關(guān)規(guī)則的詳細(xì)設(shè)置,比如允許某一用戶行駛或拒絕使用某角色等。本文將忽略不用,繼續(xù)選NEXT進下一步,此時,完成了系統(tǒng)的初步配置了。

此時,AccessMembershipProvider會自動在當(dāng)前工程的data目錄下,創(chuàng)建一個AspNetDB的ACCESS數(shù)據(jù)文件,打開它,會發(fā)現(xiàn)自動生成了相關(guān)的表格,比如有aspnet_users表,存放用戶的基本信息,aspnet_membership表,存放用戶加密的密碼和其他信息。

在進行完上面的步驟后,下面我們開始認(rèn)識并使用ASP.NET 2.0 2.0中的登陸控件。這些控件在工具箱的Login選項組中,共有Login, LoginView, PasswordRecovery, LoginStatus, LoginName, CreateUserWizard, ChangePassword 共7個,下面逐一介紹:

#p#

Login控件

拖拉一個Login控件到窗體中,就發(fā)現(xiàn)和平時見到的登陸窗口差不多了,在該控件的屬性窗口中,比較重要的是DestinationPageUrl 屬性,該屬性將指定用戶在登陸后跳轉(zhuǎn)的頁面,而FailureText表示登陸失敗后提示的文本,CreateUserText表示創(chuàng)建新用戶的提示文本,PasswordRecoveryText表示提示密碼的文本,PasswordRecoveryUrl表示實現(xiàn)密碼提示恢復(fù)功能的鏈接,此外可以設(shè)置其很多屬性,比如顯示用戶名,密碼的文本,登陸按鈕PasswordRecoveryUrl的文本等,都十分簡單,大家可以去試一下,初步設(shè)置屬性后的登陸框如下圖:

Loginname和LoginStatus控件

一般的登陸模塊,當(dāng)用戶在成功登陸后,會顯示用戶當(dāng)前登陸的身份,比如“歡迎XXX用戶登陸”的提示,而同時會顯示“LOGOUT(退出)”的提示,這時,我們可以通過Loginname和loginstatus控件來實現(xiàn),在index.aspx頁中,加入

 
 
 
 
  1. 〈form runat="server" 〉  
  2.    
  3. Welcome 〈asp:LoginName id="lnUser" runat="server"/ 〉,   
  4. your login was successful!〈br / 〉〈br / 〉  
  5.  
  6. 〈asp:LoginStatus id="lsUSer" runat="server"/ 〉  
  7.    
  8. 〈/form 〉 

則當(dāng)用戶登陸后,會顯示如下:

LoginView控件

另一十分有用的控件就是loginview。它會根據(jù)用戶角色的不同而顯示不同的登陸后的內(nèi)容。比如,做為管理員在登陸后,希望能看到所有部門的人員信息,而只希望某一部門的人員看到只屬于該部門的信息,LoginView控件可以做到這點。本文的例子中,希望系統(tǒng)顯示給匿名訪問者的信息是希望他們注冊用戶,而對于已經(jīng)登陸的用戶,則顯示歡迎他們再次訪問的文字。此時要用到Loginview控件的AnonymousTemplate模版和LoggedInTemplate模版。

AnonymousTemplate模版用于顯示給匿名用戶時的提示信息,LoggedInTemplate模版用于顯示給已經(jīng)登陸用戶的提示信息,代碼如下:

 
 
 
 
  1. 〈 asp:LoginView id="lvDorknozzle" runat="server" 〉   
  2. 〈 LoggedInTemplate 〉   
  3. Welcome   
  4. 〈 asp:LoginName id="lnUser" runat="server"/ 〉   
  5. 〈 /LoggedInTemplate 〉   
  6. 〈 AnonymousTemplate 〉   
  7. Welcome to the Dorknozzle site!〈 br / 〉   
  8. Please click on the New User link   
  9. to register on our site.   
  10. 〈 /AnonymousTemplate 〉   
  11. 〈 /asp:LoginView 〉 

運行如下圖:

 #p#

CreateUserWizard控件

使用該控件,可以很方便地一步步引導(dǎo)用戶進行注冊。拖拉其到設(shè)計窗體中,如下圖:

當(dāng)然,你可以對其屬性進行更多地設(shè)置;

比如,設(shè)置HeaderTemplate(頭模版),StartNavigationTemplate(開始注冊模版),F(xiàn)inishNavigationTemplate(結(jié)束注冊模版)等,具體設(shè)置可以參考在線幫助。而該控件還允許當(dāng)注冊成功后向用戶發(fā)郵件,比如:

 
 
 
 
  1. 〈 asp:CreateUserWizard id="CreateUserWizard1"   
  2. runat="server"〉   
  3. 〈 MailDefinition   
  4. BodyFileName="NewUserEmail.txt"   
  5. From="welcome@dorknozzle.com"   
  6. Subject="Welcome to the Dorknozzle site!"/〉   
  7. 〈 /asp:CreateUserWizard〉 

而發(fā)郵件則需要在web.config文件中配置,比如:

 
 
 
 
  1. 〈configuration〉   
  2. 〈system.web〉   
  3. 〈authentication mode="Forms"/〉   
  4. 〈smtpMail serverName="Localhost"/〉   
  5. 〈/system.web〉   
  6. 〈/configuration〉 

PasswordRecovery密碼恢復(fù)控件

該控件可以實現(xiàn)簡單地密碼提示恢復(fù)功能,并將密碼email給用戶,代碼如下:

 
 
 
 
  1. 〈asp:PasswordRecovery id="prForgotPass"   
  2. runat="server"  〉   
  3. 〈/asp:PasswordRecovery  〉 

實現(xiàn)時如下圖所示:

用戶輸入用戶名后,則需要輸入密碼恢復(fù)的答案,如下圖:

并在該控件中設(shè)置將恢復(fù)后的密碼EMAIL給用戶

 
 
 
 
  1. 〈asp:PasswordRecovery id="prForgotPass"   
  2. runat="server"  〉   
  3. 〈MailDefinition   
  4. BodyFileName="forgotpassword.txt"   
  5. From="helpdesk@dorknozzle.com"   
  6. Subject="Word has it, you forgot   
  7. your password?"/  〉   
  8. 〈/asp:PasswordRecovery  〉 

ChangePassword 更改密碼控件

更改密碼的ASP.NET登陸控件可以很方便地實現(xiàn)密碼的更改,包括一個 MailDefinition 屬性。如果將值賦給 MailDefinition 屬性,則 ChangePassword 控件在密碼成功更改時將自動向用戶發(fā)送一個電子郵件。

直接使用Membership API

有時候,需要對成員身份進行更高級別(比 Web 站點管理工具或 Login 控件提供的控制級別高)的控制。在這些情況下,可以直接使用 Membership API。

Membership API 是通過 Membership 類公開的。Membership 類包含的方法使您能夠完成以下工作:創(chuàng)建新用戶;更改密碼;搜索與特定條件匹配的用戶等等。在幕后,Login 控件使用這些方法與已配置的成員身份提供程序進行交互。

下面列出了 Membership 類的一些比較重要的方法:

CreateUser — 使您能夠創(chuàng)建新用戶。

DeleteUser — 使您能夠刪除現(xiàn)有用戶。

FindUsersByEmail — 使您能夠檢索與某個特定的電子郵件地址匹配的用戶集合。

FindUsersByName — 使您能夠檢索與某個特定的用戶名匹配的用戶集合。

GeneratePassword — 使您能夠生成隨機密碼。

GetAllUsers — 使您能夠檢索成員身份提供程序中存儲的所有用戶。

GetNumberOfUsersOnline — 使您能夠返回當(dāng)前正在訪問 Web 應(yīng)用程序的用戶數(shù)。

GetUser — 使您能夠檢索與當(dāng)前用戶相關(guān)聯(lián)的成員身份信息,或者使您能夠檢索與某個已經(jīng)提供用戶名的用戶相關(guān)聯(lián)的成員身份信息。

GetUsernameByEmail — 使您能夠檢索具有某個特定電子郵件地址的用戶的用戶名。

UpdateUser — 使您能夠更新特定用戶的信息。

ValidateUser — 使您能夠根據(jù)成員身份提供程序?qū)τ脩暨M行身份驗證。

***,我們利用該API,實現(xiàn)稍微復(fù)雜的功能。在index.aspx中,添加一個label控件,顯示在線的人數(shù),代碼如下:

 
 
 
 
  1. Number of Users Online:   
  2. 〈asp:Label id="lblNumUsersOnline" runat="server"/〉 

在PAGE-LOAD事件中,增加代碼如下:

 
 
 
 
  1. Sub Page_Load(s As Object, e As EventArgs)  
  2. Handles MyBase.Load   
  3. lblNumUsersOnline.Text = _   
  4. Membership.GetNumberOfUsersOnline().ToString()   
  5. End Sub 

則可以顯示在線人數(shù)。我們并且再添加一個gridview,顯示所有用戶的在線狀況,是否允許某種權(quán)限和相關(guān)的信息。

 
 
 
 
  1. 〈asp:GridView id="gvUsers" runat="server"   
  2. AutoGenerateColumns="False"〉   
  3. 〈Columns〉   
  4. 〈asp:BoundField HeaderText="Username"   
  5. DataField="Username" /〉   
  6. 〈asp:BoundField HeaderText="Is Online?"   
  7. DataField="IsOnline" /〉   
  8. 〈asp:BoundField HeaderText="Is Approved?"   
  9. DataField="IsApproved" /〉   
  10. 〈asp:BoundField HeaderText="Email"   
  11. DataField="Email" /〉   
  12. 〈/Columns〉   
  13. 〈/asp:GridView〉 

并將gridview綁定:

 
 
 
 
  1. gvUsers.DataSource = Membership.GetAllUsers() ;  
  2. gvUsers.DataBind(); 

***運行結(jié)果如下圖:

總結(jié)

本文以實際例子,介紹了ASP.NET 登陸控件的簡單用法以及新增加的Membership API的簡單使用,更多的請參考MSDN或正式版時的有關(guān)介紹。

【編輯推薦】

  1. ASP.NET 2.0環(huán)境下的Shell函數(shù)
  2. 在ASP.NET 2.0中向數(shù)據(jù)庫批量插入數(shù)據(jù)
  3. ASP.NET 2.0用Post方式向網(wǎng)頁發(fā)送數(shù)據(jù)
  4. ASP.NET 2.0 2.0部署WEB應(yīng)用程序淺析
  5. ASP.NET 2.0中的HttpWorkerRequest對像
  6. 介紹ASP.NET 2.0 MVC框架
  7. 配置ASP.NET 2.0 AJAX概述

網(wǎng)站題目:ASP.NET登陸控件的簡單用法
網(wǎng)頁地址:http://www.5511xx.com/article/dhcghdc.html