Где и когда Ninject создает контроллер в MVC 3

Я использую NuGet, добавляю ссылку Ninject и Ninject.Web.Mvc в свой проект. но я не добавляю код регистрации для привязки контроллера (с конструктором параметров). но кажется, что контроллер был создан правильно, интересно, как Ninject создает контроллер с параметром зависимости без регистрации контроллера в ninject. в Ninject.Web.Mvc, и я нашел следующее предложение в блоге автора (ninject),

Сам контроллер будет найден Ninject даже без добавления привязки. Конечно, вы все равно можете добавить привязку для контроллера, если вам нужно указать дополнительную информацию для привязки (например, дополнительный аргумент конструктора). Я нашел похожие вопросы: Как Ninject создает контроллер в ASP. NET MVC? ответ гласил: Ninject находит конструктор для этого типа, вводит параметры, возвращает экземпляр контроллера

мой вопрос: если мы не зарегистрируем контроллер, как NinjectResolver разрешил контроллер?


person randall    schedule 26.05.2011    source источник


Ответы (1)


классы, отличные от abstract (такие как контроллеры), по умолчанию разрешаются ninject как Bind<TheType>().ToSelf(), если нет привязки.

person Remo Gloor    schedule 26.05.2011