Я бы сказал, что проблема в том, что ваш базовый контроллер использует другой подход к доступу к данным. Более того, BaseController жестко привязан к DataContext, что приводит к проблемам с тестируемостью.
Если BaseController необходимо получать данные из базы данных, почему бы не использовать в нем также хранилище? Если полноценный контейнер IoC недоступен, вы можете внедрить зависимость хранилища в унаследованные контроллеры и передать ее в BaseController.
Таким образом, легко создать макет для данных главной страницы.