Выбор между поставщиком данных XML и SQL с помощью Ninject из файла конфигурации - PullRequest
2 голосов
/ 18 апреля 2011

Мне нужен общий совет по использованию Ninject.

У меня есть интерфейс IDataProvider и две реализации XmlProvider:IDataProvider и OracleSqlProvider:IDataProvider.

Я хочу использовать Ninject для создания интерфейсареализация, учитывая, что это определено как-то в app.config.

Вопросы:

  1. Какой лучший способ определить, какую конкретную реализацию для пользователя в app.config?
  2. Существует ли автоматический способ чтения Ninject 2 для чтенияпредпочтительные привязки из кода?
  3. Что если моему провайдеру XML не нужны параметры в конструкторе, тогда как для SQL нужна строка соединения.Как это влияет на мое объявление в app.config и дальнейшее создание экземпляра в модуле Ninject?

Ответы [ 2 ]

1 голос
/ 19 апреля 2011

По моему мнению, лучший способ в вашем sceanrio - реализовать провайдера, который получает информацию из app.config и возвращает соответствующего провайдера. Это также позволяет передавать строку подключения.

0 голосов
/ 21 апреля 2011

См. Ninject.Extensions.Xml , я думаю, это то, что вам нужно.

...