Exemple #1
0
    static int Main(string[] args)
    {
        ServiceProvider provider = new ServiceCollection().BuildServiceProvider();

        ObjectFactory factory  = ActivatorUtilities.CreateFactory(typeof(ServiceA), Array.Empty <Type>());
        ServiceA      serviceA = factory(provider, null) as ServiceA;
        ServiceB      serviceB = ActivatorUtilities.CreateInstance(provider, typeof(ServiceB)) as ServiceB;
        ServiceC      serviceC = ActivatorUtilities.CreateInstance <ServiceC>(provider);
        ServiceD      serviceD = ActivatorUtilities.GetServiceOrCreateInstance(provider, typeof(ServiceD)) as ServiceD;
        ServiceE      serviceE = ActivatorUtilities.GetServiceOrCreateInstance <ServiceE>(provider);

        if (serviceA is null ||
            serviceB is null ||
            serviceC is null ||
            serviceD is null ||
            serviceE is null)
        {
            return(-1);
        }

        return(100);
    }
Exemple #2
0
    static int Main(string[] args)
    {
        ServiceProvider provider = new ServiceCollection().BuildServiceProvider();

        // ActivatorUtilities.CreateFactory fails due to https://github.com/mono/linker/issues/1398
        //ObjectFactory factory = ActivatorUtilities.CreateFactory(typeof(ServiceA), Array.Empty<Type>());
        //ServiceA serviceA = factory(provider, null) as ServiceA;
        ServiceB serviceB = ActivatorUtilities.CreateInstance(provider, typeof(ServiceB)) as ServiceB;
        ServiceC serviceC = ActivatorUtilities.CreateInstance <ServiceC>(provider);
        ServiceD serviceD = ActivatorUtilities.GetServiceOrCreateInstance(provider, typeof(ServiceD)) as ServiceD;
        ServiceE serviceE = ActivatorUtilities.GetServiceOrCreateInstance <ServiceE>(provider);

        if (//serviceA is null ||
            serviceB is null ||
            serviceC is null ||
            serviceD is null ||
            serviceE is null)
        {
            return(-1);
        }

        return(100);
    }