Никогда не следует создавать экземпляр Controller, отсоединенный от текущего контекста выполнения, за исключением небольшого исключения, являющегося насмешливым в рамках модульного тестирования.
Конструкции типа:
var data = new MyController().getData(_Ids);
Лучше всего избегать.Если выбрать из двух, лучше получить контекст концентратора из контроллера.
Ваш пример, однако, неполон, поскольку вы не показываете, что внутри метода getData (_Ids), вы говорите, что извлекаете данные из веб-службы?
Возможно, вы можете инкапсулировать логику поиска, т.е.getData (_Ids) в receiveData () внутри самого Хаба, или если вы вызываете эту службу в большем количестве мест, вы также можете определить класс вспомогательного статического адаптера, который будет обернуть вызовы веб-службы, и этот адаптер впоследствии можно будет использоватьв методе receiveData () концентратора.
Обратите внимание, что в зависимости от приложения, написанного вами, его объема и функциональности, было бы неплохо использовать некоторую платформу Dependency Injection, такую как Autofac или Ninject, и просто внедрить IConnectionManager вКонтроллер через конструктор вместо того, чтобы создавать его в методах.