簡體   English   中英

如果用戶已經登錄,請重定向到其他頁面

[英]If user is already logged in, redirect to a different page

我試圖讓我的網站按Twitter.com的方式工作。 如果您尚未登錄www.twitter.com,則打開的第一頁是允許訪客登錄/注冊的主頁。 但是,如果這不是您第一次訪問該網站,則您將保持登錄狀態,而下次訪問www.twitter.com時,加載的第一頁是時間軸。

從首頁加載開始,我嘗試了以下代碼,但我確定這是不對的

protected void Page_Load(object sender, EventArgs e)
{
    if (Login1.LoggedIn == true)
    {
        Response.Redirect("abc.aspx");
    }    
}

LoggedIn下面有一個紅色錯誤行,上面寫着“要評估的表達式”

我該如何糾正,所以如果用戶已經登錄,則加載的第一頁是abc.aspx。

嘗試改為檢查HttpContext。

protected void Page_Load(object sender, EventArgs e)
{
    if (User.Identity.IsAuthenticated)
    {
        Response.Redirect("abc.aspx");
    }    
}

您可以在上面的代碼中添加此代碼,以確保在實際登錄時它們進入abc.aspx。

protected void Login1_LoggedIn(object sender, EventArgs e)
{
     Response.Redirect("abc.aspx");
}

有關登錄控件的更多信息http://forums.asp.net/t/1403132.aspx/1

如果您使用的是Forms Authentication只需使用defaultUrl="abc.aspx"

web.config示例

<authentication mode="Forms">
    <forms loginUrl="Login.aspx" defaultUrl="abc.aspx" />
</authentication>

有關詳細信息,請參見表單用於身份驗證的元素(ASP.NET設置架構)

暫無
暫無

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

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