Dependency injection 如何使用;石英.NET“;加上;SimpleIOC“;MVVM轻型工具包的应用?

Dependency injection 如何使用;石英.NET“;加上;SimpleIOC“;MVVM轻型工具包的应用?,dependency-injection,mvvm-light,ioc-container,factory-pattern,quartz.net,Dependency Injection,Mvvm Light,Ioc Container,Factory Pattern,Quartz.net,如何将调度库与Laurent Bugnon的MVVM Light Toolkit中包含的IoC容器集成 我目前的计划是简单地注册Quartz scheduler工厂,然后在需要时获取其实例和/或根据需要将其注入到我的其他服务中。像这样: SimpleIoc.Default.Register<ISchedulerFactory, StdSchedulerFactory>(); 以这种方式使用Quartz.NET可以吗?您只需要一个isSchedulerFactory实例。它就像Sim

如何将调度库与Laurent Bugnon的MVVM Light Toolkit中包含的IoC容器集成

我目前的计划是简单地注册Quartz scheduler工厂,然后在需要时获取其实例和/或根据需要将其注入到我的其他服务中。像这样:

SimpleIoc.Default.Register<ISchedulerFactory, StdSchedulerFactory>();

以这种方式使用Quartz.NET可以吗?

您只需要一个
isSchedulerFactory
实例。它就像SimpleIOC总是使用相同的实例一样,一旦创建了它,那么您的方法就可以了

然而,我看不出任何理由,为什么您的服务需要
isSchedulerAcgtory
。这是您要注入的
IScheduler
。考虑以下事项:

SimpleIoc.Default.Register<ISchedulerFactory, StdSchedulerFactory>();
SimpleIoc.Default.Register<IScheduler>( 
    () => SimpleIoc.Default.GetInstance<ISchedulerFactory>().GetScheduler());

public SomeService(IScheduler scheduler)
simpleoc.Default.Register();
SimpleIoc.Default.Register(
()=>SimpleIoc.Default.GetInstance().GetScheduler());
公共服务(ISScheduler调度程序)
SimpleIoc.Default.Register<ISchedulerFactory, StdSchedulerFactory>();
SimpleIoc.Default.Register<IScheduler>( 
    () => SimpleIoc.Default.GetInstance<ISchedulerFactory>().GetScheduler());

public SomeService(IScheduler scheduler)