Как отловить 500 внутренних ошибок сервера в C # - PullRequest
0 голосов
/ 19 октября 2010

Я использую Google Analytics Dashboard Control, который доступен по адресу

http://gadashboardcontrols.codeplex.com/

Проблема в том, что он работает нормально, когда я подключен к Интернету, но если я использую его на компьютере, который не имеет доступа к Интернету, он показывает

Server Error in '/' Application.
The remote name could not be resolved: 'www.google.com' 

Я хочу поймать это исключение и показывает дружеское сообщение пользователю.Я вызываю эти элементы управления приборной панели на моем View в iframe, подобном этому

<iframe src="../../GoogleAnalytics/Visitor.aspx" height="275"></iframe>

, и если я размещаю try catch на странице Visitor.aspx, он не перехватывает исключение.Как я должен поймать это исключение, я использую asp.net MVC 2 с C #

Ответы [ 3 ]

1 голос
/ 19 октября 2010

Вы не можете перехватить это исключение, потому что проблема возникает в браузере, а не на сервере. Вы не можете контролировать это из кода aspx.

0 голосов
/ 19 октября 2010

Ошибка на стороне сервера, поэтому следует попытаться исправить ее в своем коде.

0 голосов
/ 19 октября 2010

Вместо этого вы можете проверить сетевое подключение и предоставить альтернативный контент на странице, если пользователь не в сети. Смотреть в System.Net.NetworkInformation.NetworkInterface.GetIsNetworkAvailable() для этого.

Нет хорошего способа перехватить это исключение, поскольку вы используете iframe, а страница загружается в браузер, а не через код. Для этого есть некоторые хитрости, но не такие надежные.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...