Как избежать исключения на Logger.Write (), когда конфигурация была удалена? - PullRequest
0 голосов
/ 19 июля 2011

Если пользователь удаляет конфигурацию ведения журнала из App.Config, ActivationException вызывается при вызове Logger.Write("test").

Каков наилучший способ проверки этого без , вызывающегоисключение?

Ответы [ 2 ]

1 голос
/ 09 сентября 2011

Как я уже упоминал в комментарии, я не думаю, что существует надежный способ определить, будет ли возбуждено исключение. Я не уверен насчет конкретных деталей вашего приложения, но один из подходов - попытаться записать сообщение при запуске приложения. Например. «Запуск приложения». Если это удастся, отлично. Если оно вызывает исключение, то перехватите исключение и настройте Enterprise Library, используя свободный API с конфигурацией по умолчанию. Затем вы можете записать в журнал сообщение о сбое регистрации запуска приложения.

После запуска приложения корпоративная библиотека, скорее всего, должна быть правильно настроена, а последующие Logger.Write'ы должны быть успешными.

1 голос
/ 20 июля 2011

По моему мнению, есть несколько способов решения этой проблемы, но если вы хотите убедиться, что не возникло исключение, поскольку конфигурация журнала была удалена, я бы использовал «ConfigurationManager.OpenExeConfiguration» из системы Пространство имен .Configuration для проверки файла во время выполнения и проверки наличия в нем разделов и данных, которые я ожидал.

...