Обработка ошибок в приложениях Silverlight - PullRequest
1 голос
/ 12 сентября 2010

Как лучше всего обрабатывать любые возникающие ошибки в приложении Sivlerlight?

Я не говорю об обработке ошибок в среде разработки.

Но как лучше всегорегистрировать ошибки и искать их для справки?

Ответы [ 2 ]

1 голос
/ 13 сентября 2010

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

Затем журнал клиента можно отобразить в диалоговом окне, не вызывающем панику, где полная трассировка стека доступна в параметре toggle'able.текстовое окно.Это, очевидно, позволяет обнаруживать исключения, если веб-служба не работает или сломана.Он также позволяет пользователю копировать стековую трассировку и отправлять ее вам по электронной почте, если они особенно недовольны.

Хотя ведение журнала на сервере (например, в Log4Net) более мощное, так как дает гораздо больше возможностей для ведения журнала, включая оповещения по электронной почте,это зависит от того, сможете ли вы найти исключение для конкретного человека, для чего требуются дополнительные инструменты поиска или знания в случае журнала событий.

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

1 голос
/ 12 сентября 2010

Мне обычно не нравится полагаться исключительно на Silverlight для осмысленного отображения ошибок клиенту (т. Е. «Проблема загрузки данных ...»).Скорее я предпочитаю обернуть исключение и сделать обратный вызов на мой сервер через службу WCF с открытым методом, чтобы принять исключение Silverlight в качестве параметра.Оказавшись на сервере, вы можете зарегистрировать его в журнале событий, текстовом журнале, отправить электронное письмо в группу поддержки и т. Д.

Реальный ключ здесь заключается в том, чтобы получить это исключение с клиента и на вашем сервере, чтобыобрабатываются наилучшим и наиболее общительным образом.

...