.NET 4.x Как вынести в отдельный класс блок try . catch - C#
Формулировка задачи:
Проблема следующая: на сервере есть много сервисов. Моя задача - перехватывать и обрабатывать ошибки этих сервисов. Обработка ошибок планируется на клиенте. Но чтобы они туда пришли, необходим блок try ... catch.
Сервисов у меня примерно 20, в каждом по две функции.
Можно ли избежать повторения блока try ... catch. Например, вынести каким-то образов все функции в один статический класс, реализовать try ... catch там и передавать туда функции в качестве делегата. Или ещё каким-то образом.
Благодарю за помощь
Решение задачи: «.NET 4.x Как вынести в отдельный класс блок try . catch»
textual
Листинг программы
- private delegate void Update();
- public static void Main(string[] args)
- {
- Update Up = Upd1;
- Up += Upd2;
- Up += Upd3;
- Up += Upd4;
- Up += Upd5;
- Up += Upd6;
- foreach (Delegate meth in Up.GetInvocationList())
- {
- try
- {
- meth.DynamicInvoke();
- }
- catch (Exception e)
- {
- Console.WriteLine(e.Message);
- }
- }
- }
- private static void Upd1()
- {
- Console.WriteLine("#1");
- }
- private static void Upd2()
- {
- Console.WriteLine("#2");
- throw new ArgumentNullException();
- }
- private static void Upd3()
- {
- Console.WriteLine("#3");
- }
- private static void Upd4()
- {
- Console.WriteLine("#4");
- }
- private static void Upd5()
- {
- Console.WriteLine("#5");
- throw new ArgumentException();
- }
- private static void Upd6()
- {
- Console.WriteLine("#6");
- throw new ArgumentOutOfRangeException();
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д