一、创建控制台项目
引入nuget包
二、创建接口
using System;
using System.Collections.Generic;
using System.Text;
namespace _02_autofac
{
internal interface Person
{
void Eat();
void Say();
}
}
三、创建实现类
using System;
using System.Collections.Generic;
using System.Text;
namespace _02_autofac
{
public class Student:Person
{
public void Eat()
{
Console.WriteLine("吃早饭");
}
public void Say()
{
Console.WriteLine("说早安");
}
}
}
四、创建实例
using Autofac;
using System;
using System.ComponentModel;
namespace _02_autofac
{
internal class Program
{
private static Autofac.IContainer Container { get; set; }
static void Main(string[] args)
{
//创建容器
var builder = new ContainerBuilder();
//创建builder,并在builder中注册类型。
builder.RegisterType<Student>().As<Person>();
//实例化容器(可以讲第一步合并进来)
Container = builder.Build();
//在需要使用接口的地方,通过container来解析得到一个借口的实例。
Person person = Container.Resolve<Person>();
person.Eat();
person.Say();
}
}
}