#c# #.net #exception-handling #enterprise-library #unity2.0
#c# #.net #обработка исключений #enterprise-библиотека #unity2.0
Вопрос:
Я пытаюсь настроить блок обработки исключений для своего приложения и хотел бы внедрить политики обработки исключений (определенные в файле конфигурации) в тот момент, когда я регистрирую модули и перехват с помощью unity на моей фабрике IoC.
На данный момент я просто регистрирую типы, настраиваю перехват и использую поведение исключений, подобное этому:
container.AddNewExtension<Interception>();
container.RegisterType<INotificationService, NotificationService>(
new TransientLifetimeManager(), new Interceptor<InterfaceInterceptor>(),
new InterceptionBehavior<ExceptionBehavior>());
Затем я обрабатываю исключение в методе Invoke моего поведения исключения и применяю там политики следующим образом:
exManager.HandleException(ex, policy);
Правильно ли это, есть ли какие-либо идеи или отзывы, и как я могу вводить политики при
настройке контейнера Unity?
Комментарии:
1. Это звучит как хороший подход. Очень похоже на реализацию управления исключениями, часть 1 (прокрутите вниз до ExceptionInterceptionBehavior).
2. Спасибо, Тузо. Это именно то, что я искал. Еще раз спасибо, что поделились.
Ответ №1:
Вы можете использовать функцию внедрения политики в корпоративной библиотеке и использовать обработчик обработки исключений: https://msdn.microsoft.com/en-us/library/Ff660909(v=PandP.20).aspx