杨中科 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]普通的类默认不支持

也可以混合其他参数

相关推荐
Java中文社群4 分钟前
26届双非上岸记!快手之战~
java·后端·面试
whitepure11 分钟前
万字详解Java中的面向对象(一)——设计原则
java·后端
autumnTop12 分钟前
为什么访问不了同事的服务器或者ping不通地址了?
前端·后端·程序员
用户67570498850235 分钟前
SQL 判断是否“存在”?99% 的人还在写错!
后端
PetterHillWater40 分钟前
12 MCP Servers的介绍
后端·aigc·mcp
杨杨杨大侠44 分钟前
02 - 核心模型设计 🧩
后端
小Q圈圈1 小时前
BeanUtils 你走好!MapStruct 才是对象转换的真香神器!
后端
杨杨杨大侠1 小时前
01 - 项目初始化与架构设计
后端
MaxHua1 小时前
SQL语法大全指南:从基础到进阶的关键字与用法解析
后端·mysql