FormsAuthentication.RedirectToLoginPage 方法

定義

將瀏覽器重新導向至登入 URL。

多載

RedirectToLoginPage()

將瀏覽器重新導向至登入 URL。

RedirectToLoginPage(String)

將瀏覽器重新導向至包含指定查詢字串的登入 URL。

範例

下列程式碼範例會使用 SignOut 方法清除表單驗證 Cookie,並使用 方法將使用者重新導向至登入頁面 RedirectToLoginPage

<%@ Page Language="C#" %>
<%@ Import Namespace="System.Web.Security" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

public void LoginLink_OnClick(object sender, EventArgs args)
{
  FormsAuthentication.SignOut();
  FormsAuthentication.RedirectToLoginPage();
}

</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>

<form id="form1" runat="server">
Welcome <b><%=User.Identity.Name%></b>. Not <b><%=User.Identity.Name%></b>? 
Click <asp:LinkButton id="LoginLink" Text="here" 
                      OnClick="LoginLink_OnClick" runat="server" />
to sign in.

<!-- Page Contents -->

</form>



</body>
</html>
<%@ Page Language="VB" %>
<%@ Import Namespace="System.Web.Security" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

Public Sub LoginLink_OnClick(sender As Object, args As EventArgs)
  FormsAuthentication.SignOut()
  FormsAuthentication.RedirectToLoginPage()
End Sub

</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>

<form id="form1" runat="server">
Welcome <b><%=User.Identity.Name%></b>. Not <b><%=User.Identity.Name%></b>? 
Click <asp:LinkButton id="LoginLink" Text="here" 
                      OnClick="LoginLink_OnClick" runat="server" />
to sign in.

<!-- Page Contents -->

</form>



</body>
</html>

備註

方法 RedirectToLoginPage 會將瀏覽器重新導向至 LoginUrl

方法 RedirectToLoginPage 不會清除表單驗證 Cookie。 您可以使用 RedirectToLoginPage 方法搭配 SignOut 方法,將一位使用者登出,並允許不同的使用者登入。

HttpResponse.Redirect不同于 方法,這個方法不會藉由呼叫 HttpResponse.End 來結束要求。 這表示方法呼叫後面的 RedirectToLoginPage 程式碼將會執行。

RedirectToLoginPage()

將瀏覽器重新導向至登入 URL。

public:
 static void RedirectToLoginPage();
public static void RedirectToLoginPage ();
static member RedirectToLoginPage : unit -> unit
Public Shared Sub RedirectToLoginPage ()

範例

下列程式碼範例會使用 SignOut 方法清除表單驗證 Cookie,並使用 方法將使用者重新導向至登入頁面 RedirectToLoginPage

<%@ Page Language="C#" %>
<%@ Import Namespace="System.Web.Security" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

public void LoginLink_OnClick(object sender, EventArgs args)
{
  FormsAuthentication.SignOut();
  FormsAuthentication.RedirectToLoginPage();
}

</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>

<form id="form1" runat="server">
Welcome <b><%=User.Identity.Name%></b>. Not <b><%=User.Identity.Name%></b>? 
Click <asp:LinkButton id="LoginLink" Text="here" 
                      OnClick="LoginLink_OnClick" runat="server" />
to sign in.

<!-- Page Contents -->

</form>



</body>
</html>
<%@ Page Language="VB" %>
<%@ Import Namespace="System.Web.Security" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

Public Sub LoginLink_OnClick(sender As Object, args As EventArgs)
  FormsAuthentication.SignOut()
  FormsAuthentication.RedirectToLoginPage()
End Sub

</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>

<form id="form1" runat="server">
Welcome <b><%=User.Identity.Name%></b>. Not <b><%=User.Identity.Name%></b>? 
Click <asp:LinkButton id="LoginLink" Text="here" 
                      OnClick="LoginLink_OnClick" runat="server" />
to sign in.

<!-- Page Contents -->

</form>



</body>
</html>

備註

方法 RedirectToLoginPage 會將瀏覽器重新導向至 LoginUrl

方法 RedirectToLoginPage 不會清除表單驗證 Cookie。 您可以使用 RedirectToLoginPage 方法搭配 SignOut 方法,將一位使用者登出,並允許不同的使用者登入。

另請參閱

適用於

RedirectToLoginPage(String)

將瀏覽器重新導向至包含指定查詢字串的登入 URL。

public:
 static void RedirectToLoginPage(System::String ^ extraQueryString);
public static void RedirectToLoginPage (string extraQueryString);
static member RedirectToLoginPage : string -> unit
Public Shared Sub RedirectToLoginPage (extraQueryString As String)

參數

extraQueryString
String

要包含在重新導向 URL 中的查詢字串。

範例

下列程式碼範例會使用 SignOut 方法清除表單驗證 Cookie,並使用 方法將使用者重新導向至登入頁面 RedirectToLoginPage

<%@ Page Language="C#" %>
<%@ Import Namespace="System.Web.Security" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

public void LoginLink_OnClick(object sender, EventArgs args)
{
  FormsAuthentication.SignOut();
  FormsAuthentication.RedirectToLoginPage(GetQueryString());
}

private string GetQueryString()
{
  string queryString = "";

  NameValueCollection qs = Request.QueryString;

  foreach (string key in qs.AllKeys)
    foreach (string value in qs.GetValues(key))
      queryString += Server.UrlEncode(key) + "=" + Server.UrlEncode(value) + "&";

  return queryString.TrimEnd('&');    
}

</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
<form id="form1" runat="server">
Welcome <b><%=User.Identity.Name%></b>. Not <b><%=User.Identity.Name%></b>? 
Click <asp:LinkButton id="LoginLink" Text="here" 
                      OnClick="LoginLink_OnClick" runat="server" />
to sign in.

<!-- Page Contents -->

</form>



</body>
</html>
<%@ Page Language="VB" %>
<%@ Import Namespace="System.Web.Security" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

Public Sub LoginLink_OnClick(sender As Object, args As EventArgs)
  FormsAuthentication.SignOut()
  FormsAuthentication.RedirectToLoginPage(GetQueryString())
End Sub

Private Function GetQueryString() As String
  Dim queryString As String = ""

  Dim qs As NameValueCollection = Request.QueryString

  For Each key As String In qs.AllKeys
    For Each value As String In qs.GetValues(key)
      queryString &= Server.UrlEncode(key) & "=" & Server.UrlEncode(value) & "&"
    Next
  Next

  Return queryString.TrimEnd("&")  
End Function

</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
<form id="form1" runat="server">
Welcome <b><%=User.Identity.Name%></b>. Not <b><%=User.Identity.Name%></b>? 
Click <asp:LinkButton id="LoginLink" Text="here" 
                      OnClick="LoginLink_OnClick" runat="server" />
to sign in.

<!-- Page Contents -->

</form>



</body>
</html>

備註

方法 RedirectToLoginPage 會將瀏覽器重新導向至 , LoginUrl 並包含 extraQueryString 值做為 QueryString 重新導向 URL 的 。

方法 RedirectToLoginPage 不會清除表單驗證 Cookie。 您可以使用 RedirectToLoginPage 方法搭配 SignOut 方法,將一位使用者登出,並允許不同的使用者登入。

另請參閱

適用於