.NET 依赖注入的3中方式
一、简介
依赖注入共有3种方式:构造函数注入、属性注入、方法注入
二、构造函数注入
在program.cs中对组件进行注册:
builder.Services.AddScoped<IScopedService,ScopedService>();
服务注册配置后,在需要注入的类上使用构造函数。
public class Controller { private readonly IScopedService Service; public Controller(IScopedService service) { this.Service = service; } }
三、属性注入
定义接口和类,同构造函数注入。
public class Controller { [Inject] private readonly IScopedService Service{get;set;}
//使用 Service 调用所需方法
Service.GetMoney();
}
在Startup.cs文件的 Configure.Services 方法中,需要添加 AddControllersWithViews() 方法,并启用属性注入。
四、方法注入(比较少见)
定义接口和类,同构造函数注入。
在需要调用的方法中加上[Dependency]
public class Controller {
private readonly IScopedService Service = null;//属性改为为变量
//新增任意名称方法,参数为需要注入的 IScopedService ,写法与构造函数类似,只是此处是方法不是构造函数。
public void Function( IScopedService service) {
Service = service;
}
public void Hey(){
Service.GetMoney();
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!