我正在使用White框架自动化Windows应用程序。应用程序是一类White框架。
在我的测试期间,我通过方法getApplication()获取一个Application实例,将其绑定到内核,放入serviceLocator并将此实例保持为Singleton:
IKernel kernel = new StandardKernel();
kernel.Bind<Application>().ToMethod(ctx => getApplication()).InSingletonScope();
ServiceLocator.SetLocatorProvider(() => new NinjectServiceLocator(kernel));
每当我需要获取应用程序时,我都会使用以下代码:
Application application = ServiceLocator.Current.GetInstance<Application>();
到目前为止它对我来说很好。
但是经过几个步骤后,我需要得到另一个与第一个Application实例不同的Application实例。
如何使用ServiceLocator将第二个Application实例绑定到内核?以及如何使用服务定位器获取第二个实例(因为2个实例具有相同的类型)?
提前感谢一百万人提供任何帮助。