HttpResponse.Redirect HttpResponse.Redirect HttpResponse.Redirect HttpResponse.Redirect Method

Definition

Leitet einen Client zu einer neuen URL um.Redirects a client to a new URL.

Überlädt

Redirect(String) Redirect(String) Redirect(String) Redirect(String)

Leitet eine Anforderung an eine neue URL um und gibt die neue URL an.Redirects a request to a new URL and specifies the new URL.

Redirect(String, Boolean) Redirect(String, Boolean) Redirect(String, Boolean) Redirect(String, Boolean)

Leitet einen Client zu einer neuen URL um.Redirects a client to a new URL. Gibt die neue URL an und meldet, ob die Ausführung der aktuellen Seite beendet werden soll.Specifies the new URL and whether execution of the current page should terminate.

Redirect(String) Redirect(String) Redirect(String) Redirect(String)

Leitet eine Anforderung an eine neue URL um und gibt die neue URL an.Redirects a request to a new URL and specifies the new URL.

public:
 void Redirect(System::String ^ url);
public void Redirect (string url);
member this.Redirect : string -> unit
Public Sub Redirect (url As String)

Parameter

url
String String String String

Der Zielort.The target location. Dies kann ein zur Anwendung relativer virtueller Pfad sein.This may be an application-relative virtual path.

Ausnahmen

Nach dem Senden der HTTP-Header wird eine Umleitung versucht.A redirection is attempted after the HTTP headers have been sent.

Beispiele

Im folgenden Beispiel wird eine unbedingte Umleitung zu einer anderen Website erzwungen.The following example forces an unconditional redirection to another Web site.

Response.Redirect("http://www.microsoft.com/gohere/look.htm");
   
Response.Redirect("http://www.microsoft.com/gohere/look.htm")
   

Hinweise

Das Redirect Aufrufen von entspricht dem Redirect Aufrufen von, wobei der zweite trueParameter auf festgelegt ist.Calling Redirect is equivalent to calling Redirect with the second parameter set to true.

RedirectAufrufe End , die nach ThreadAbortException Abschluss eine-Ausnahme auslöst.Redirect calls End which throws a ThreadAbortException exception upon completion. Diese Ausnahme wirkt sich nachteilig auf die Leistung der Webanwendung aus.This exception has a detrimental effect on Web application performance. Daher wird empfohlen, anstelle dieser Überladung die HttpResponse.Redirect(String, Boolean) -Überladung zu verwenden und für den endResponse -Parameter zu übergeben false und dann CompleteRequest die-Methode aufzurufen.Therefore, we recommend that instead of this overload you use the HttpResponse.Redirect(String, Boolean) overload and pass false for the endResponse parameter, and then call the CompleteRequest method. Weitere Informationen finden Sie unter der Methode End.For more information, see the End method.

Hinweis

Nur für Mobile Seiten: Wenn Ihre Anwendung auf cookiless-Sitzungen basiert oder Anforderungen von mobilen Geräten empfangen kann, die cookilose Sitzungen erfordern, kann die Verwendung einer~Tilde () in einem Pfad dazu führen, dass eine neue Sitzung erstellt und die Sitzung möglicherweise verloren geht. Vorrats.For mobile pages only, if your application relies on cookieless sessions, or might receive requests from mobile devices that require cookieless sessions, using a tilde (~) in a path can result in creating a new session and potentially losing session data. Um eine Eigenschaft auf einem mobilen Steuerelement mit einem Pfad wie "~/Path" festzulegen, lösen Sie den Pfad mithilfe ResolveUrl von "~/Path", bevor Sie ihn der Eigenschaft zuweisen.To set a property on a mobile control with a path such as "~/path", resolve the path using ResolveUrl "~/path" before assigning it to the property.

ASP.NET führt die Umleitung durch die Rückgabe des HTTP-Statuscodes 302 aus.ASP.NET performs the redirection by returning a 302 HTTP status code. Eine alternative Möglichkeit zum Übertragen der Steuerung an eine andere Transfer Seite ist die-Methode.An alternative way to transfer control to another page is the Transfer method. Die Transfer -Methode ist in der Regel effizienter, da Sie keinen Roundtrip zum Client auslöst.The Transfer method is typically more efficient because it does not cause a round trip to the client. Weitere Informationen finden Sie unter Vorgehensweise: Umleiten von Benutzern zueiner anderen Seite.For more information, see How to: Redirect Users to Another Page.

Redirect(String, Boolean) Redirect(String, Boolean) Redirect(String, Boolean) Redirect(String, Boolean)

Leitet einen Client zu einer neuen URL um.Redirects a client to a new URL. Gibt die neue URL an und meldet, ob die Ausführung der aktuellen Seite beendet werden soll.Specifies the new URL and whether execution of the current page should terminate.

public:
 void Redirect(System::String ^ url, bool endResponse);
public void Redirect (string url, bool endResponse);
member this.Redirect : string * bool -> unit
Public Sub Redirect (url As String, endResponse As Boolean)

Parameter

url
String String String String

Der Zielspeicherort.The location of the target.

endResponse
Boolean Boolean Boolean Boolean

Gibt an, ob die Ausführung der aktuellen Seite beendet werden soll.Indicates whether execution of the current page should terminate.

Ausnahmen

url enthält ein Zeilenumbruchzeichen.url contains a newline character.

Nach dem Senden der HTTP-Header wird eine Umleitung versucht.A redirection is attempted after the HTTP headers have been sent.

Die Seitenanforderung ist das Ergebnis eines Rückrufs.The page request is the result of a callback.

Beispiele

Im folgenden Beispiel wird die IsClientConnected -Eigenschaft verwendet, um zu überprüfen, ob der Client, der die Seite anfordert, mit dem Server verbunden bleibt.The following example uses the IsClientConnected property to check whether the client that is requesting the page remains connected to the server. Wenn IsClientConnected den Wert true hat, ruft der Redirect Code die-Methode auf, und der Client zeigt eine andere Seite an.If IsClientConnected is true, the code calls the Redirect method, and the client will view another page. Wenn IsClientConnected false ist, ruft der Code die End -Methode auf, und die gesamte Seiten Verarbeitung wird beendet.If IsClientConnected is false, then the code calls the End method and all page processing is terminated.

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

    private void Page_Load(object sender, EventArgs e)
    {
        // Check whether the browser remains
        // connected to the server.
        if (Response.IsClientConnected)
        {
            // If still connected, redirect
            // to another page. 
            Response.Redirect("Page2CS.aspx", false);
        }
        else
        {
            // If the browser is not connected
            // stop all response processing.
            Response.End();
        }
    }

</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
    <title>ASP.NET Example</title>
</head>
<body>
    <form id="form1" runat="server">
    </form>
</body>
</html>
<%@ Page Language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
    Private Sub Page_Load(sender As Object, e As EventArgs)

        ' Check whether the browser remains
        ' connected to the server.
        If (Response.IsClientConnected) Then

            ' If still connected, redirect
            ' to another page.             
            Response.Redirect("Page2VB.aspx", false)
        Else
            ' If the browser is not connected
            ' stop all response processing.
            Response.End()
        End If
    End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
    <title>ASP.NET Example</title>
</head>
<body>
    <form id="form1" runat="server">
    </form>
</body>
</html>

Hinweise

Ein absolute URL (z http://www.contoso.com/default.aspx. b.) oder ein relative URL (z. b. default. aspx) kann für den Ziel Speicherort angegeben werden, aber einige Browser lehnen möglicherweise eine relative URL ab.An absolute URL (for example, http://www.contoso.com/default.aspx) or a relative URL (for example, Default.aspx) can be specified for the target location but some browsers may reject a relative URL.

Wenn Sie diese Methode in einem Seiten Handler verwenden, um eine Anforderung für eine Seite zu beenden und eine neue Anforderung für eine andere Seite endResponse zu false starten, legen Sie CompleteRequest auf fest, und klicken Sie dann auf die-Methode.When you use this method in a page handler to terminate a request for one page and start a new request for another page, set endResponse to false and then call the CompleteRequest method. Wenn Sie für true den endResponse -Parameter angeben, ruft diese Methode End die-Methode für die ursprüngliche Anforderung auf, ThreadAbortException die eine-Ausnahme auslöst, wenn Sie abgeschlossen wird.If you specify true for the endResponse parameter, this method calls the End method for the original request, which throws a ThreadAbortException exception when it completes. Diese Ausnahme wirkt sich nachteilig auf die Leistung der Webanwendung aus. false aus diesem endResponse Grund wird die Übergabe des Parameters empfohlen.This exception has a detrimental effect on Web application performance, which is why passing false for the endResponse parameter is recommended. Weitere Informationen finden Sie unter der Methode End.For more information, see the End method.

Hinweis

Wenn Ihre Anwendung auf mobilen Seiten von cookielosen Sitzungen abhängig ist oder Anforderungen von mobilen Geräten empfangen werden können, für die cookielose Sitzungen erforderlich sind, kann durch~die Verwendung einer Tilde () in einem Pfad eine neue Sitzung erstellt werden, und Sitzungsdaten können verloren gehen.For mobile pages, if your application relies on cookieless sessions, or might receive requests from mobile devices that require cookieless sessions, using a tilde (~) in a path can create a new session and potentially lose session data. Um eine Eigenschaft auf einem mobilen Steuerelement mit einem Pfad wie "~/Path" festzulegen, lösen Sie den Pfad mithilfe ResolveUrl von "~/Path", bevor Sie ihn der Eigenschaft zuweisen.To set a property on a mobile control with a path such as "~/path", resolve the path using ResolveUrl "~/path" before assigning it to the property.

ASP.NET führt die Umleitung durch die Rückgabe des HTTP-Statuscodes 302 aus.ASP.NET performs the redirection by returning a 302 HTTP status code. Eine alternative Möglichkeit zum Übertragen der Steuerung an eine andere Transfer Seite ist die-Methode.An alternative way to transfer control to another page is the Transfer method. Die Transfer -Methode ist in der Regel effizienter, da Sie keinen Roundtrip zum Client auslöst.The Transfer method is typically more efficient because it does not cause a round trip to the client. Weitere Informationen finden Sie unter Vorgehensweise: Umleiten von Benutzern zueiner anderen Seite.For more information, see How to: Redirect Users to Another Page.

Gilt für: