Udostępnij za pośrednictwem


HttpResponse.End Metoda

Definicja

Wysyła wszystkie dane wyjściowe buforowane do klienta, zatrzymuje wykonywanie strony i zgłasza EndRequest zdarzenie.

public:
 void End();
public void End ();
member this.End : unit -> unit
Public Sub End ()

Wyjątki

Wywołanie metody do End() zakończyło bieżące żądanie.

Uwagi

Ta metoda jest udostępniana tylko pod kątem zgodności z platformą ASP — czyli w celu zapewnienia zgodności z technologią programowania internetowego opartego na modelu COM, która poprzedzała ASP.NET. Jeśli chcesz przejść do EndRequest zdarzenia i wysłać odpowiedź do klienta, zwykle zaleca się wywołanie CompleteRequest .

Aby naśladować zachowanie End metody na platformie ASP, ta metoda próbuje zgłosić ThreadAbortException wyjątek. Jeśli ta próba zakończy się pomyślnie, wątek wywołujący zostanie przerwany, co jest szkodliwe dla wydajności witryny. W takim przypadku nie jest wykonywany żaden kod po wywołaniu End metody .

End Jeśli metoda nie może zgłosić ThreadAbortExceptionwartości , zamiast tego opróżnia bajty odpowiedzi do klienta. Robi to synchronicznie, co może być również szkodliwe dla wydajności witryny.

W obu przypadkach (bez względu na to, czy ThreadAbortException wyjątek został pomyślnie zgłoszony), potok odpowiedzi przechodzi do EndRequest zdarzenia.

Metoda CompleteRequest nie zgłasza wyjątku, a kod po wywołaniu CompleteRequest metody może zostać wykonany. Jeśli twoim zamiarem jest uniknięcie wykonania kolejnego kodu, a jeśli kara End za wydajność jest akceptowalna, możesz wywołać End metodę zamiast CompleteRequest.

Dotyczy