杨中科 ASP.NET Core 中的依赖注入的使用

ASP.NET CORE中服务注入的地方

1、在ASP.NET Core项目中一般不需要自己创建ServiceCollection、IServiceProvider。在Program.cs的builder.Build()之前向builderServices中注入

2、在Controller中可以通过构造方法注入服

务。

3、演示

新建一个calculator类

注入

新建TestController

使用测试

运行:

特殊情况:

在构造很慢,比如扫描D盘下 所有文件

服务注册

此时使用构造函数的注入方式

若很多方法中,只有这一个方法使用到了 testService

运行:

导致对象构建十分缓慢,导致程序卡住。还会导致其他接口调用也十分缓慢

思考:如何在使用到这个方法的时候,才去构造它

低使用频率的服务

1、把Action用到的服务通过Action的参数注入,在这个参数上标注[FromServices]。和Action的其他参数不冲突

2、一般不需要,只有调用频率不高并且资源的创建比较消耗资源的服务才FromServices]

3、只有Action方法才能用[FromServices]普通的类默认不支持

也可以混合其他参数

相关推荐
盖世英雄酱5813610 小时前
java深度调试技术【第六七八章:宽字节与多字节】
java·后端
望道同学11 小时前
PMP/信息系统项目管理师 9 张 思维导图【考试必备】
前端·后端·程序员
码事漫谈11 小时前
C++11到C++23语法糖万字详解
后端
码事漫谈11 小时前
别人的C#看着难受?可能是你不清楚这些语法糖
后端
c#上位机11 小时前
halcon图像增强之自动灰度拉伸
图像处理·算法·c#·halcon·图像增强
+VX:Fegn089512 小时前
计算机毕业设计|基于springboot+vue的学校课程管理系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·后端·课程设计
上进小菜猪12 小时前
魔珐星云让AI拥有“身体“的具身智能开发平台实战评测
后端
f***241112 小时前
springboot系列--自动配置原理
java·spring boot·后端