Silky微服务框架之服务引擎( 四 )

// 该服务将会被注册为范围的,并被命名为:DemoService,在服务解析过程中可以通过服务名 DemoService 解析到[InjectNamed("DemoService")]public class DemoService : IScopedDependency{}

  1. 服务引擎提供了多种判断服务是否注册以及服务解析方法;
  2. 服务引擎提供了获取指定的配置项的方法;
  3. 可以通过服务引擎获取类型查找器(TypeFinder)、服务配置器(Configuration)、主机环境变量提供者(IHostEnvironment)、以及主机名(HostName)等信息 。
获取和使用服务引擎在开发过程中,可以通过EngineContext.Current获取服务引擎,并使用服务引擎提供的各个方法,例如:判断服务是否注册、解析服务、获取配置类、获取当前原因的主机名称、或是使用类型查找器(TypeFinder)、服务配置器(Configuration)、主机环境变量提供者(IHostEnvironment)等 。
提示在开发过程中,使用服务引擎的大部分场景是,在不方便实现对某个服务进行构造注入的场景下,通过服务引擎实现对某个服务解析,从而得到该服务的实例 。

经验总结扩展阅读