Будет ли ASP.NET Page Life работать полный цикл, когда соединение было неожиданно закрыто? - PullRequest
4 голосов
/ 16 сентября 2011

Будет ли Asp.net запускать свой полный жизненный цикл страницы, хотя удаленное соединение было неожиданно закрыто до состояния, что потоковые данные не могут быть отправлены клиенту? Это пустая страница asp.net со значениями по умолчанию. и я обеспокоен тем, что событие OnUnLoad не выполняется. Будет ли это на самом деле?

Кто-нибудь получил подробную информацию по этому поводу?

Ответы [ 2 ]

2 голосов
/ 16 сентября 2011

Я думаю, что вы должны разрабатывать свои страницы таким образом, чтобы не зависеть от выполнения этого события.

Сеть / сеть непредсказуемы, всегда может случиться что угодно, сбой браузера, ошибка, соединение потеряно или медленноили работает, а затем снова не работает ...

Я убежден, что когда вы закрываете браузер, веб-запрос удаляется, но, поскольку вы спрашиваете о жизненном цикле страницы веб-формы, он заканчивается * 1005.* затем данные отправляются клиенту, существует так много переменных и возможностей, что, я думаю, безопаснее всегда предполагать, что весь жизненный цикл будет выполнен, даже если некому будет использовать / потреблять ответ.

1 голос
/ 16 сентября 2011

Это всего лишь предположение, но я думаю, что отключение клиента каким-то образом вызывает ThreadAbortException. Следовательно, любое из следующих событий больше не произойдет. Конечно, вы можете попытаться поймать исключение, а затем освободить свои ресурсы.

...