Вы должны задать себе вопрос, за что отвечает мой контролер?
ИМХО, контроллеры должны выступать в качестве посредников между представлением и моделью, где модель в данном случае включает в себя службы.
Тем не менее, никогда не существует строгих правил относительно того, что и куда ставить. В отличие от фанатиков, публикующих строгие ответы, я бы выбрал прагматичный подход. Будет ли добавление зависимости файловой системы к вашей службе базы данных сделать ее более полезной? Приведет ли это к взрыву типа - ваш сервис должен иметь зависимость от файловой системы injectet == +1 интерфейс +1 конкретная реализация +1 класс тестирования в случае модульных тестов и т. Д.
Сомтьемс, это того не стоит, так что используйте свое собственное мнение.