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);
        }
예제 #2
0
        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.");
            }
        }
예제 #3
0
 public static IServiceContainer AddInstance(object instance)
 {
     CheckInitialized();
     return(rootContianer.AddInstance(instance));
 }