控制台使用依赖注入

Posted buchizaodian

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了控制台使用依赖注入相关的知识,希望对你有一定的参考价值。

创建一个依赖注入容器

class Program
    {
        static void Main(string[] args)
        {

            //创建一个依赖注入容器(IServiceProvider)
            var service = new ServiceCollection().AddSingleton<IPerson, Teacher>().BuildServiceProvider().CreateScope().ServiceProvider;
            service.GetService<IPerson>();//Teacher构造
            var a = service.GetService<IPerson>();//因为是单例模式所以不会再创建新实例
            Console.WriteLine(a.GetType());//Teacher
        }
    }


    interface IPerson { }
    public class Student: IPerson
    {
        public Student() => Console.WriteLine("Student构造");
        public string name="TOM";
        public int age;
    }

    public class Teacher : IPerson
    {
        public Teacher() => Console.WriteLine("Teacher构造");
        public string name;
        public int age;
    }

 

以上是关于控制台使用依赖注入的主要内容,如果未能解决你的问题,请参考以下文章

Android片段和依赖注入

IOC 控制反转Android 布局依赖注入 ( 布局依赖注入步骤 | 布局依赖注入代码示例 )

PHP依赖注入,控制反转,反射Ioc容器和服务提供者各个概念的理解和使用

PHP依赖注入,控制反转,反射Ioc容器和服务提供者各个概念的理解和使用

IOC 控制反转Android 视图依赖注入 ( 视图依赖注入步骤 | 视图依赖注入代码示例 )

c#依赖注入和控制反转的书籍