Я почти никогда не использую статические данные из-за внутренних проблем, возникающих при добавлении рабочих потоков.
Если вам нужен только один экземпляр чего-то доступного для ваших объектов, то, возможно, поможет шаблон Singleton. Возможно, вы захотите прочитать эту полезную статью о Singletons в C # .
Существует также инфраструктура, которая делает запрос услуг действительно простым. Вы можете настроить платформу так, чтобы она каждый раз предоставляла вам новый экземпляр службы или одну и ту же службу. Проблема в том, что я не могу вспомнить, как это называется, и был бы очень признателен, если бы кто-то еще мог прокомментировать это, потому что я хотел бы прочитать это снова. Я думал, что это был Unity или Prism, но я не уверен. Я знаю, что последний фреймворк предназначен для настройки вашего приложения с учетом принципов MVVM.