您的位置:首页 > 其它

Ninject2 xml扩展使用

2013-08-25 12:03 225 查看
为了系统中个模块的解耦我选择了Ninject ,他比起其他几个同类的框架,我个人认为他的优势比较大,简单的通过接口和实现类的绑定就实现了模块间的松耦合调用,我的项目情况是在使用时需要实施的人员去配置数据库访问模块,为了方便让实施人员我使用了Ninject.Extensions.Xml,以下是实现的过程:

为了与时俱进我下载了

Ninject.Extensions.Xml-3.0.0.5-release-net-4.0.zip

现在的 3.0 和以前的2.0 有很大区别,按说明上的描述 以前的2.0版本是可以的其代码如下:

NinjectKernel = new StandardKernel();
NinjectKernel.Load("myXmlConfigurationModule.xml");

但是,如果我引用了3.0的包结果会在 

NinjectKernel = new StandardKernel(); 这里报出了莫名其妙的错,说无法找到Ninject.Extensions.Xml文件,经过了好几个小时的跟进发现原来在3.0的时候我们需要这样去把扩展进行引入(我下载了Ninject.Extensions.Xml的源代码,然后看他的test项目,结果才发现原来他们自己也是这样写的)

3.0的初始化代码如下:
var settings = new NinjectSettings { LoadExtensions = false };
NinjectKernel = new StandardKernel(settings, new XmlExtensionModule());
NinjectKernel.Load("myXmlConfigurationModule.xml");

用以上代码方能正确使用Ninject.Extensions.Xml,在运行时为程序进行灵活的配置


                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Ninject