Внедрение зависимостей в мире .net без необходимости использования файлов конфигурации XML - PullRequest
2 голосов
/ 19 октября 2010

Внедрение зависимостей выглядит великолепно, однако, когда я смотрю на примеры, я часто вижу множество конфигурационных XML-файлов.Это нехорошо, потому что:

  • У меня нет проверки времени компиляции имен типов в файлах конфигурации
  • Инструменты рефакторинга не обновляют файлы confilg при переименовании типов
  • Я не хочу, чтобы клиенты меняли конфигурацию!
  • Я программист на C # и не хотел бы скрывать логику моего приложения в XML.

Некоторые платформы позволяют вам конфигурировать их из кода, однако большая часть их документации (и примеры) предполагает, что вы используете XML, так как конфигурация XML появилась первой.Так какие же структуры внедрения зависимостей считают конфигурацию на основе кода нормальным способом их использования?

Ответы [ 4 ]

2 голосов
/ 19 октября 2010
2 голосов
/ 19 октября 2010

Почти все контейнеры теперь имеют API на основе кода для регистрации зависимостей, даже те, которые изначально были настроены только через XML.И обычно XML-подход рекомендуется только для крайних случаев (например, там, где может потребоваться изменить регистрацию / подключение проводки после развертывания)

Например StructureMap и Castle Windsor

2 голосов
/ 19 октября 2010
0 голосов
/ 25 октября 2010

Простой сервисный локатор (бесстыдная вилка)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...