PRB: ThreadAbortException виникає, якщо ви використовуєте, Response.End, Response.Redirect або Server.Transfer

УВАГА! Цю статтю переклала програма машинного перекладу Microsoft, а не людина. Корпорація Microsoft пропонує вам як машинні переклади, так і переклади фахівців, щоб Ви мали доступ до всіх статей бази знань рідною мовою. Проте стаття, яку переклав комп’ютер, не завжди бездоганна. Вона може містити лексичні, синтаксичні або граматичні помилки. Так само помиляється іноземець, спілкуючись вашою рідною мовою. Корпорація Microsoft не несе відповідальність за жодні неточності, помилки або шкоду, завдану неправильним перекладом змісту або його використанням з боку користувачів. Крім того, корпорація Microsoft часто оновлює програму машинного перекладу.

Клацніть тут, щоб переглянути цю статтю англійською мовою: 312629
Ознаки
Якщо ви використовуєте, Response.End, Response.Redirectабо Server.Transfer метод, виникає ThreadAbortException -винятку. Можна спробувати зловити заяву зловити цей виняток.
причина
Метод Response.End закінчується виконання сторінки і зрушення виконання програми заходу трубопроводу, події Application_EndRequest . Рядок коду, який випливає, Response.End не виконується.

Ця проблема виникає в Response.Redirect та Server.Transfer методи, тому, що обидва методи називати Response.End всередині країни.
Розв'язанн
Щоб вирішити цю проблему, використовуйте один з наступних методів:
  • Для Response.End, зателефонуйте в HttpContext.Current.ApplicationInstance.CompleteRequest метод, а не Response.End виконання коду, щоб обійти на Application_EndRequest подія.
  • Для Response.Redirect, використовувати перевантаження, Response.Redirect (рядок url, bool endResponse) що проходить ХИБНІСТЬ для на endResponse параметр придушити внутрішні виклику Response.End. Наприклад:
      Response.Redirect ("nextpage.aspx", false);						
    Якщо сценарій виконання цього способу код випливає Response.Redirect виконується.
  • Для Server.Transfer, використовувати в Server.Execute метод замість.
Стан
Така поведінка передбачена.

Попередження. Цю статтю переведено автоматично

Властивості

Ідентифікатор статті: 312629 – останній перегляд: 08/30/2012 22:39:00 – виправлення: 1.0

Microsoft ASP.NET 4.5, Microsoft ASP.NET 4.0, Microsoft ASP.NET 3.5, Microsoft ASP.NET 2.0, Microsoft ASP.NET 1.1, Microsoft ASP.NET 1.0

  • kbexcepthandling kbprb kbmt KB312629 KbMtuk
Зворотний зв’язок