Скорее всего, он создает дочерний класс DefaultControllerFactory , который представляет фабрику контроллеров, зарегистрированную по умолчанию.Из MSDN отмечается, что: Этот класс предоставляет удобный базовый класс для разработчиков, которые хотят вносить только незначительные изменения в создание контроллера.Таким образом, можно переопределить метод GetControllerInstance и использовать Ninject для создания контроллера на основе типа контроллера.
Однако текущая фабрика контроллера должна быть зарегистрирована в файле Global.asax.в частности в Application_Start (), используя SetControllerFactory , передавая тип дочернего класса в конструктор типа.Таким образом, это фактически сообщит MVC, что для создания контроллеров следует использовать пользовательский класс контроллеров вместо фабрики контроллеров MVC по умолчанию.