次の方法で共有


FormsAuthentication.RedirectToLoginPage メソッド

定義

ブラウザーをログイン URL にリダイレクトします。

オーバーロード

RedirectToLoginPage()

ブラウザーをログイン URL にリダイレクトします。

RedirectToLoginPage(String)

指定したクエリ文字列でログイン URL にブラウザーをリダイレクトします。

次のコード例では、 メソッドを使用してフォーム認証 Cookie を SignOut クリアし、 メソッドを使用してユーザーをログイン ページに 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 メソッドと組み合わせて使用すると、1 人の 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 ()

次のコード例では、 メソッドを使用してフォーム認証 Cookie を SignOut クリアし、 メソッドを使用してユーザーをログイン ページに 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 メソッドと組み合わせて使用すると、1 人の 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 に含めるクエリ文字列。

次のコード例では、 メソッドを使用してフォーム認証 Cookie を SignOut クリアし、 メソッドを使用してユーザーをログイン ページに 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リダイレクトし、リダイレクトされた URL の として値QueryStringを含めますextraQueryString

メソッドは RedirectToLoginPage 、フォーム認証 Cookie をクリアしません。 メソッドを RedirectToLoginPage メソッドと組み合わせて使用すると、1 人の SignOut ユーザーをログアウトさせ、別のユーザーにログインさせることができます。

こちらもご覧ください

適用対象