ValidateRequest - получение ошибки и отображение на текущей странице
У меня есть приложение asp.net, и я понял, что если я установлю ValidateRequest
в false
всегда отображается стандартная страница ошибок.
Я слышал, что вы можете отобразить пользовательскую страницу ошибки.
Но мне нужно знать , могу ли я отловить ошибку и отобразить ее (после обратной передачи) на текущей странице, которая отображается.
Есть какой-либо способ сделать это?
1 ответ
Решение
Я нашел следующую статью:
http://blogs.msdn.com/b/kaevans/archive/2003/07/07/9791.aspx
Последний пункт статьи ("Переопределение метода OnError") описывает, как отобразить ошибку на текущей странице.
OnError
метод должен быть перезаписан и error StatusCode
должен быть установлен на 200.
protected override void OnError(EventArgs e)
{
System.Exception oops = Server.GetLastError();
if(oops.GetBaseException() is System.Web.HttpRequestValidationException )
{
System.Diagnostics.Debug.Assert(false);
Response.Write(oops.ToString());
Response.StatusCode = 200;
Response.End();
}
}