过去,我使用原始反映类并设置为静态字段,如下
public class ServiceHelper{
private static IFoo _iFoo=null;
public static IFoo Foo{
get{
if(_iFoo==null)
{
_iFoo=Activator.CreateInstance("assembly") as IFoo;
}
return _iFoo;
}
}
}
现在我们正在使用Ninject
kernel.Bind(x => x.FromAssembliesInPath("assembilypath")
.SelectAllClasses()
.BindDefaultInterface().Configure(binding => binding.InSingletonScope()));
的问题:
这两种方法是一样的吗?
Ninject只会加载程序集一次?
如果更改装配,可以检测并重新加载新装配体吗?
答案 0 :(得分:2)