这个问题困扰了几个小时,今天分享给大家避免少走弯路
1.首先需要在Nuget中安装Autofac这两个包,推荐使用5.0版
2.core中在Startup.cs的ConfigureServices中添加你要添加的依赖项,如下代码:
services.AddTransient<ITripartiteConsultation, TripartiteConsultation>();
3.在控制器中注入:
private readonly ITripartiteConsultation _iMedicalInstitutionstAppService;
public ConsultationController(ITripartiteConsultation iMedicalInstitutionstAppService)
{
_iMedicalInstitutionstAppService = iMedicalInstitutionstAppService;
}
以上三步即可执行接口在WebApi中注入,认真的理解每一步的原理,开发起来要快得多,在这里做一下记录
下面形象的来描述一下依赖注入:
依赖注入是一个过程,就是当一个类需要调用另一个类来完成某项任务的时候,在调用类里面不要去new被调用的类的对象,而是通过注入的方式来获取这样一个对象。具体的实现就是在调用类里面有一个被调用类的接口,然后通过调用接口的函数来完成任务。比如A调用B,而B实现了接口C,那么在A里面用C定义一个变量D,这个变量的实例不在A里面创建,而是通过A的上下文来获取。这样做的好处就是将类A和B分开了,他们之间靠接口C来联系,从而实现对接口编程。