从配置文件中使用Ninject在XML数据提供程序和SQL之间进行选择

时间:2011-04-18 14:40:29

标签: .net ninject

我需要一般的Ninject使用建议。

我有一个界面IDataProvider和两个实施XmlProvider:IDataProviderOracleSqlProvider:IDataProvider

我想使用Ninject实例化一个接口实现,因为它是在app.config中以某种方式定义的。

问题:

  1. 在app.config中为用户定义特定实现的最佳方法是什么?
  2. Ninject 2是否有自动方式从代码中读取首选绑定?
  3. 如果我的XML提供程序在构造函数中不需要参数,而SQL需要连接字符串,该怎么办?这如何影响我在app.config中的声明以及Ninject Module中的进一步实例化?

2 个答案:

答案 0 :(得分:1)

在我看来,最好的方法是实现一个Provider,它从app.config获取信息并返回适当的提供者。这也允许传递连接字符串。

答案 1 :(得分:0)

请参阅Ninject.Extensions.Xml,我认为这就是您所需要的。