ValidateRequest - получение ошибки и отображение на текущей странице - PullRequest
0 голосов
/ 10 февраля 2012

У меня есть приложение asp.net, и я понял, что если я установлю ValidateRequest на false, всегда будет отображаться стандартная страница ошибки.

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

Но мне нужно знать , могу ли я перехватить ошибку и отобразить ее (после обратной передачи) на текущей странице , то есть

Есть ли способ сделать это?

1 Ответ

0 голосов
/ 13 февраля 2012

Я нашел следующую статью:

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();        
  }       
}
...