Поскольку вы уже расширяете другой класс, производный от HttpApplication, я думаю просто скопировать соответствующий исходный код из класса NinjectHttpApplication в расширенный класс HttpApplication. Вместо того, чтобы вырезать и вставить его, просто посмотрите на source для NinjectHttpApplication в проекте расширения Ninject2 Ninject.Web.Mvc здесь .
Я бы специально скопировал материал в Application_Start () и Application_Stop () . Другие способы регистрации контроллеров хороши, но вы можете зарегистрировать свои контроллеры так, как пожелаете. В Application_Start () вы заметите, что ядро создается путем вызова чисто виртуальной функции CreateKernel () - вы можете просто создать встроенное ядро прямо здесь. Кроме того, обратите внимание на наличие свойства Kernel в классе NinjectHttpApplication - я также скопировал бы это в ваш собственный класс. Похоже, что здесь подразумевается, что производный от HttpApplication класс эффективно служит в качестве KernelContainer.
Отказ от ответственности: я не пробовал это, чтобы увидеть, работает ли это, хотя я скоро буду. Я использовал Ninject 1.x в веб-проекте и собираюсь перейти на Ninject 2 в ближайшем будущем; тем не менее, я, вероятно, смогу получить информацию непосредственно из NinjectHtppApplication. Удачи!