簡體   English   中英

登錄后重定向到特定頁面

[英]Redirecting to specific page after Login

我的申請表中有三頁。

為Login.aspx

Report.aspx

Main.aspx

當用戶點擊www.abc123.com/Report.aspx網址時,如果他們沒有登錄,我會將他們導向www.abc123.com/Login.aspx頁面,但在他們登錄后我想顯示Report.aspx頁面而不是Main.aspx頁面。 下面是我的代碼:

  protected String Username
    {
        get
        {
            return Convert.ToString(Session["LoggedInUser"]);
        }
    }
    protected void Page_Load(object sender, EventArgs e)
    {
        Response.Cache.SetCacheability(HttpCacheability.NoCache);
        Response.Cache.SetExpires(DateTime.Today.AddDays(-1));
        Response.Cache.SetNoStore();

        if (String.IsNullOrEmpty(Username))
        {
            Response.Redirect("Login.aspx");
        }

網上有很多文章。 這是一個簡單的 - http://support.microsoft.com/kb/301240

正如我理解您的問題和問題上下文,我懷疑您有一個項目既包含基於開箱即用表單的身份驗證的剩余部分,也包含一些自定義身份驗證代碼。
解決問題的簡短方法是通過設置forms -element的defaultPage-attribute來配置登錄頁面在web.config中重定向到的頁面。
但由於這個問題與安全性有關,我強烈建議您了解基於ASP.NET表單的身份驗證的機制。 一個干凈的方法涉及:

  • 在web.consign中正確配置基於表單的身份驗證。
  • 如有必要:實施其他提供程序,例如,如果要根據自定義數據庫檢查用戶帳戶。
  • 在web.config中或以編程方式保護應用程序的受限頁面/區域(在第一步中只有Report.aspx)。

如果您需要添加受特定受眾限制的其他頁面,這也將構建一個良好的基礎。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM