登錄系統()
【代碼說明】代碼第~行是一個完整的驗證控件組代碼第~行定義了一個ID為LogonNameTextBox的文本框代碼第~行定義了一個requiredfieldvalidator驗證控件主要用來驗證必須填寫的控件其屬性controlToValidate用來設置具體驗證哪個文本框它的值是某個控件的ID代碼第~行也是同樣的一個驗證控件組第~行使用了validationsummary驗證控件旨在驗證頁面時顯示頁面中的所有錯誤
說明width=%是用在表格中的相對百分比來表示單元格的寬度
用戶登錄頁面ST_LogonModuleascxcs的主要代碼
當頁面加載時會首先運行Page_Load判斷用戶是否已經登錄過LogonButton_Click事件是當用戶單擊登錄按鈕時觸發的在此用它從基類中繼承的方法Authenticate()來驗證是否有該用戶如果沒有則顯示錯誤信息ST_LogonModuleascxcs的主要代碼如程序所示
程序 ST_LogonModuleascxcs
public partial class ST_LogonModule : ST_ModuleBase
{
private void Page_Load(object sender SystemEventArgs e)
{
//如果用戶已經登錄
if(HttpContextCurrentUserIdentityIsAuthenticated)
{
String ST_UserName
=HttpContextCurrentUserIdentityName;
ShowMsgText=<b><font color=red>
+ST_UserName+</font></b>歡迎您使用本系統!;
ShowMsgStyle[color]=Green;
}
//還未登錄
else
{
ShowMsgText=您還未登錄本系統登錄後才可使用各項服務;
ShowMsgStyle[color]=Red;
}
}
private void LogonButton_Click(object sender SystemEventArgs e)
{
//判斷用戶是否合法
if(Authenticate(LogonNameTextBoxTextTrim()
LogonPasswordTextBoxTextTrim())==true)
{
//創建身份驗證票詳細解釋參見第章的ASPNET基於Forms的身份驗證
FormsAuthenticationSetAuthCookie
(LogonNameTextBoxTextTrim()false)
//重定向到登錄頁面
ResponseRedirect(PathPrefix+/ST_defaultaspx)
}
else
{
//設置登錄錯誤信息
MismatchLabelVisible=true;
}
}
【代碼說明】在Page_Load中代碼第行用屬性HttpContextCurrentUserIdentityIsAuthenticated來識別用戶是否已經正確登錄如果已經登錄過了ShowMsgText的值就設為歡迎您使用本系統!沒有則設為您還未登錄本系統登錄後才可使用各項服務LogonButton_Click事件中代碼第~行先判斷當前是否是合法用戶如果是則將用戶信息保存在Cookie中以便下次登錄
說明可通過MSDN來了解FormsAuthentication類的相關信息
返回目錄ASPNET項目開發指南
編輯推薦
ASPNET MVC 框架揭秘
ASPNET開發寶典
ASP NET開發培訓視頻教程
From:http://tw.wingwit.com/Article/program/net/201311/15990.html