Коли я використовую Response.Redirect (...) для перенаправлення форми на нову сторінку, я отримую помилку:
Перший випадковий виняток типу "System.Threading.ThreadAbortException" стався в mscorlib.dll
Виняток типу "System.Threading.ThreadAbortException" стався в mscorlib.dll, але не використовувався в коді користувача
Я розумію це в тому, що помилка викликана тим, що веб-сервер перервав решту сторінки, на яку було викликано response.redirect.
Я знаю, що можу додати другий параметр, Response.Redirect
який називається endResponse. Якщо я встановив для endResponse значення True, я все одно отримую помилку, але якщо я встановив її на False, я цього не роблю. Я майже впевнений, що це означає, що веб-сервер працює за рештою сторінки, з якої я перенаправлений. Що, здавалося б, мало неефективно. Чи є кращий спосіб зробити це? Щось інше Response.Redirect
або є спосіб змусити стару сторінку припинити завантаження, де я не отримаю ThreadAbortException
?
Context.ApplicationInstance.CompleteRequest();
. Чому? Чи доведеться яreturn
від обробника події умовно?