Кто-нибудь знает как поймать HttpRequestValidationException?
Отловил уже всё, кроме него.
Не работает даже такой код:
Код:
try
{
lbl.Text = tb.Text;
}
catch (HttpRequestValidationException ex)
{
lbl.Text = "catched";
}
{
lbl.Text = tb.Text;
}
catch (HttpRequestValidationException ex)
{
lbl.Text = "catched";
}
tb - TextBox
lbl - Label
MSDN почему-то молчит по данному вопросу.
А оно точно там возникает? То есть тебе при обнаружении данного исключения должы об этом сообщеить. Есть ли сообщение? Так же не забыл(а) ли ты поставить validateRequest="true"?
Сообщение тоже появляется: System.Web.HttpRequestValidationException: Обнаружено потенциально опасное значение Request.QueryString, полученное от клиента (="<script>").
Возможно, проблема просто клубже, чем я думаю?
Что бы ловить исключения, надо ловить их не так как ты хочешь, а через файл Global.ascx - так кажеться. Так вот там есть специальное событие которое возникает при несловленном исключении. Точно не скажу поищи просто что-нить типа этого - там точно есть статья. Но там проблема в том что то объект исключения к тебе так просто не попадёт и их надо через сессии как-то передавать.Точно не помню, так бы сказал, просто тороплюсь поэтому потом если чё напишу. Ок?
Хотя в global.asax лезть, если честно, не хочется.
Я что-то не понимаю чем это исключение отличается от всех остальных.
Почему, скажем, OleDbException работает, а это - нет.
Хотя в global.asax лезть, если честно, не хочется.
Я что-то не понимаю чем это исключение отличается от всех остальных.
Почему, скажем, OleDbException работает, а это - нет.[/quote]
У объекта Page есть событие Error которое возникает при необработанном исключении.
Вообщем чейчас сказать точно не могу, но ты можешь точно в каком операторе оно происходит.
2Tommy - тоже спасибо. Если бы я это знал, то всё бы уже работало. :)
В приведенном примере этим оператором по идее должен быть оператор присваивания в блоке try, да только у меня такое подозрение, что это не так, что ловиться оно должно как-то по-другому, например, Page.Error. Попробую дальше поразбираться, думаю, всё должно заработать. О результате постараюсь коротЕнько написать.