Проблема, которую я вижу с определением привязок только в коде, состоит в том, что вы должны добавить ссылку на dll.
Вы не можете изменить привязку, не добавив ссылку на новую dll (удалив ссылку на старую), изменив код и перекомпилировав.
Если бы у нас была конфигурация xml, мне бы вообще не понадобилась ссылка, и мне не пришлось бы перекомпилировать.
Прямо сейчас у меня есть приложение MVC, которое использует DI для передачи репозиториев в контроллеры. Ничто иное, как код Ninject для добавления привязок, использует конкретные реализации репозиториев. И все же мне нужно добавить ссылку на dll, содержащую свои реализации. Только для одной строки кода!
Или, может быть, есть возможность добиться этого с помощью Ninject?