Я бы разделил его на две функции: первая с первым вызовом со своим собственным try / catch и собственным действием ошибки и возвращением данных запроса.
Затем я проверил бы эти данные и, когда они не были пустыми, снова вызвал второй запрос с собственной обработкой try / catch и error.
Во-первых, Вам нужна директива "использования" для включения пространства имен, которое включает класс с дополнительными методами.
Второй - ре "MyClass.myMethod" - дополнительные методы работают над экземплярами, не как статичные - таким образом, Вам было бы нужно:
MyClass foo = ...
int i = foo.myMethod(); // translates as: int i = Extentions.myMethod(foo);
Наконец - если Вы хотите использовать дополнительный метод внутри MyClass
(или подкласс), Вам нужно явное this
- т.е.
int i = this.myMethod(); // translates as: int i = Extentions.myMethod(this);
Это - один из нескольких случаев где this
вопросы.
Вы включали пространство имен, где Ваше расширение определяется? Я был записан этим прежде.
И способ обойти необходимость добавить пространство имен, где Ваше расширение должно определить расширение в том пространстве имен. Это не хорошая практика хотя
Вы импортировали (using
пункт вначале) пространство имен, в который Extensions
класс?
using Myself.MyProduct.MyNamespace;
Существует ли причина, вынуждающая Вас использовать Дополнительные методы?
Необходимо только использовать дополнительные методы, если Вы не можете добавить метод в первоисточнике и не можете расширить класс с помощью подкласса (если он объявляется sealed
)
Страница на Дополнительных состояниях методов:
В целом мы рекомендуем реализовать дополнительные методы экономно и только когда Вы имеете к. Каждый раз, когда возможно, клиентский код, который должен расширить существующий тип, должен сделать так путем создания нового типа, полученного из существующего типа. Для получения дополнительной информации посмотрите Наследование (Руководство по программированию C#).
Вот еще больше информации относительно классов и полиморфизма.
Если расширение класса действительно не, возможность затем следует другим ответам относительно using
направляющие и методы экземпляра по сравнению со статическими методами.