protected override void ConfigureService(IServiceContainer serviceContainer) { var instance = new FakeOpenGenericService <PocoClass>(null); serviceContainer.AddType <PocoClass, PocoClass>(Lifetime.Singleton); serviceContainer.AddType(typeof(IFakeOpenGenericService <PocoClass>), typeof(FakeService), Lifetime.Singleton); serviceContainer.AddType(typeof(IFakeOpenGenericService <>), typeof(FakeOpenGenericService <>), Lifetime.Singleton); serviceContainer.AddInstance <IFakeOpenGenericService <PocoClass> >(instance); }
private static void InstanceSelfRegister(IServiceContainer services, RegisterProxyDescriptor d) { var lifetime = d.LifetimeType.ToAspectCoreLifetime(); switch (lifetime) { case Lifetime.Singleton: services.AddInstance(d.InstanceOfImplementation); break; default: throw new InvalidOperationException("Invalid operation for scoped or Transient mode."); } }
public static IServiceContainer AddInstance(object instance) { CheckInitialized(); return(rootContianer.AddInstance(instance)); }