Ninject 内核绑定是这样的:-
创建如下 XML:-
<module name="myXmlConfigurationModule">
<bind service="MyNamespace.IMyService, MyAssembly"
to="MyNamespace.MyServiceImplementation, MyAssembly" />
<bind service="MyNamespace.IMyOtherService, MyAssembly"
to="MyNamespace.MyOtherServiceImplementation, MyAssembly" />
</module>
然后代码: -
using Ninject;
enter code here
class ABC
{
public void CallingMethodUsingNinject()
{
private IKernel kernel= new StandardKernel();
kernel.Load("yourXmlFileName.xml");
bool ismodule = kernel.HasModule("myXmlConfigurationModule");//To Check The module
if(ismodule )
{
IMyService MyServiceImplementation = kernel.Get<IMyService>();
MyServiceImplementation.YourMethod();
}
}
}
由于 XML 文件属性设置,您可能会遇到一些问题,因此需要更改您的 xml 文件设置。激活 IMyService 时出错 没有匹配的绑定可用,并且类型不是自绑定的。解决方案:-不要忘记将此xml文件的Copy to Output Directory属性设置为Copy if newer,以便可以自动将其复制到输出目录
更多信息:-阅读https://www.packtpub.com/sites/default/files/9781782166207_Chapter_02.pdf