|
很多用戶在開發 ASP.NET 應用程序時都有這樣的需求:管理員角色的賬戶使用管理員的登錄界面進行登錄,普通用戶角色的賬戶使用普通用戶的登錄界面進行登錄。由于ASP.NET的web.config里只能使用一個 authentication mode="Forms"節點,所以,要實現不同用戶采用不同的登錄界面,一個辦法就是創建一個管理員專用的虛擬目錄,并設置為應用程序來實現。下面介紹另外一種采用重定向的辦法來解決這個問題。
本文介紹的方法原理是根據登錄界面的返回地址進行判斷,然后重定向到不同的頁面。下面就是實現的詳細過程。
1. 創建一個網站,在網站里創建Admin文件夾和User文件夾,分別存放admin和普通用戶所使用的文件。也可以只設置一個 Admin 文件夾。由于本方法采用的判斷返回路徑的方法,所以,要能從路徑中區分出哪些是admin用戶使用的文件夾。當然,采用其他的判斷方法也是可以的。
2. 在網站根目錄下分別創建3個登錄文件:Login.ASPx、UserLogin.ASPx和AdminLogin.ASPx。其中Login.ASPx文件起地址轉換的作用,
Login.ASPx文件的主要內容:
protected void Page_Load(object sender, EventArgs e){String ReturnUrl = Request.QueryString["ReturnUrl"];if (ReturnUrl == null || ReturnUrl.Equals(String.Empty)){ //默認情況下,按普通用戶進行登錄 Response.Redirect("~/UserLogin.ASPx");}else{ if (ReturnUrl.ToLower().Contains("/admin/")) { Response.Redirect("~/AdminLogin.ASPx?ReturnUrl=" + Server.UrlEncode(ReturnUrl)); } else { Response.Redirect("~/UserLogin.ASPx?ReturnUrl=" + Server.UrlEncode(ReturnUrl)); }}
NET技術:在 ASP.NET 中實現不同角色的用戶使用不同登錄界面的方法,轉載需保留來源!
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。