/// <summary> /// 初始化一个<see cref="ServiceDescriptor"/>新实例。 /// </summary> /// <param name="serviceType">服务类型。</param> /// <param name="implementationFactory">实现实例工厂。</param> /// <param name="lifetime">生命周期。</param> public ServiceDescriptor(Type serviceType, Func <IServiceProvider, object> implementationFactory, LifetimeScopeFlag lifetime = LifetimeScopeFlag.Transient) : this(serviceType, lifetime) { ImplementationFactory = implementationFactory; }
/// <summary> /// 初始化一个<see cref="ServiceDescriptor"/>新实例。 /// </summary> /// <param name="serviceType">服务类型。</param> /// <param name="lifetime">生命周期。</param> private ServiceDescriptor(Type serviceType, LifetimeScopeFlag lifetime = LifetimeScopeFlag.Transient) { Lifetime = lifetime; ServiceType = serviceType; }
/// <summary> /// 创建依赖注入映射描述信息。 /// </summary> /// <param name="serviceType">服务类型。</param> /// <param name="implementationInstance">实现实例。</param> /// <param name="lifetime">生命周期。</param> /// <returns></returns> public static ServiceDescriptor Descriptor(Type serviceType, object implementationInstance, LifetimeScopeFlag lifetime = LifetimeScopeFlag.Transient) { return(new ServiceDescriptor(serviceType, implementationInstance, lifetime)); }
/// <summary> /// 创建依赖注入映射描述信息。 /// </summary> /// <param name="serviceType">服务类型。</param> /// <param name="implementationFactory">实现实例工厂。</param> /// <param name="lifetime">生命周期。</param> /// <returns></returns> public static ServiceDescriptor Descriptor(Type serviceType, Func <IServiceProvider, object> implementationFactory, LifetimeScopeFlag lifetime = LifetimeScopeFlag.Transient) { return(new ServiceDescriptor(serviceType, implementationFactory, lifetime)); }
/// <summary> /// 创建依赖注入映射描述信息。 /// </summary> /// <typeparam name="TService">泛型服务类型。</typeparam> /// <typeparam name="TImplementation">泛型实现类型。</typeparam> /// <param name="lifetime">生命周期。</param> /// <returns></returns> public static ServiceDescriptor Descriptor <TService, TImplementation>(LifetimeScopeFlag lifetime = LifetimeScopeFlag.Transient) where TService : class where TImplementation : TService { return(Descriptor(typeof(TService), typeof(TImplementation), lifetime)); }
/// <summary> /// 创建依赖注入映射描述信息。 /// </summary> /// <typeparam name="TService">泛型服务类型。</typeparam> /// <param name="implementationInstance">实现实例。</param> /// <param name="lifetime">生命周期。</param> /// <returns></returns> public static ServiceDescriptor Descriptor <TService>(object implementationInstance, LifetimeScopeFlag lifetime = LifetimeScopeFlag.Transient) where TService : class { return(Descriptor(typeof(TService), implementationInstance, lifetime)); }
/// <summary> /// 初始化一个<see cref="ServiceDescriptor"/>新实例。 /// </summary> /// <param name="serviceType">服务类型。</param> /// <param name="implementationInstance">实现实例。</param> /// <param name="lifetime">生命周期。</param> public ServiceDescriptor(Type serviceType, object implementationInstance, LifetimeScopeFlag lifetime = LifetimeScopeFlag.Transient) : this(serviceType, lifetime) { ImplementationInstance = implementationInstance; }
/// <summary> /// 创建依赖注入映射描述信息。 /// </summary> /// <typeparam name="TService">泛型服务类型。</typeparam> /// <param name="implementationFactory">实现实例工厂。</param> /// <param name="lifetime">生命周期。</param> /// <returns></returns> public static ServiceDescriptor Descriptor <TService>(Func <IServiceProvider, object> implementationFactory, LifetimeScopeFlag lifetime = LifetimeScopeFlag.Transient) where TService : class { return(Descriptor(typeof(TService), implementationFactory, lifetime)); }
/// <summary> /// 初始化一个<see cref="ServiceDescriptor"/>新实例。 /// </summary> /// <param name="serviceType">服务类型。</param> /// <param name="implementationType">实现类型。</param> /// <param name="lifetime">生命周期。</param> public ServiceDescriptor(Type serviceType, Type implementationType, LifetimeScopeFlag lifetime = LifetimeScopeFlag.Transient) : this(serviceType, lifetime) { ImplementationType = implementationType; }