HttpResponse.End Metoda

Definicja

Wysyła wszystkie aktualnie buforowane dane wyjściowe 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 zakończyło End() bieżące żądanie.

Uwagi

Ta metoda jest udostępniana tylko pod kątem zgodności z platformą ASP , czyli w celu zachowania zgodności z technologią programowania w sieci Web opartą na modelu COM, która poprzedzała ASP.NET. Jeśli chcesz przejść do EndRequest zdarzenia i wysłać odpowiedź do klienta, zazwyczaj 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 (niezależnie od tego, czy ThreadAbortException wyjątek został pomyślnie zgłoszony), potok odpowiedzi przechodzi do przodu 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 wykonywania kolejnego kodu i jeśli kara End za wydajność jest akceptowalna, możesz wywołać End metodę zamiast CompleteRequest.

Dotyczy