Microsoft.Extensions.DependencyInjection 阅读笔记
2024-09-01 12:32:14
一、 关于IServiceCollection接口的设计
public interface IServiceCollection : IList<ServiceDescriptor>
{
}
a. 为什么不直接用List<>集合,而要重新定义一个这样的IServiceCollection接口呢?
1. 为了从IList<>那里得到所有的List集合的可重载方法;
2. 有了自已的名字IServiceCollection,而不是List<>这样直接使用,如果直接继承了List<>的话,那么在使用的时候,你用这个List<>根本就不知道这是干啥的,并且还要带上参数;
二、关于调试时的跟踪
[DebuggerDisplay("Lifetime = {Lifetime}, ServiceType = {ServiceType}, ImplementationType = {ImplementationType}")]
public class ServiceDescriptor
a. 加上DebuggerDisplay特性,然后用{}把属性名称显出来了即可,在跟踪Stack中你就能看到想要显示的效果了。
未完.....
最新文章
- CentOS7.2 编译安装SVN1.9.5客户端
- 在dede:arclist、dede:list等标签中调用附加字段
- mysqldump导出部分数据的方法: 加入--where参数
- 任我行 CRM 9.4
- 使用SqlTransaction回滚事务
- cannot restore segment prot after reloc: Permission denied
- Android 中View的绘制机制源代码分析 三
- 两个栈实现队列+两个队列实现栈----java
- Oracle Job 语法和时间间隔的设定(转)
- Jquery滚动到页面底部自动Ajax加载图文列表,类似图片懒加载效果,带加载效果
- java基础总结(1)安装jdk
- [HNOI2010]STONE取石头游戏
- python pymysql.err.InternalError: (1366, ";Incorrect string value: &#39;\\xE9\\x9F\\xA9\\xE6\\xA2\\x85...
- div 遮罩问题
- 2019.03.25 NOIP训练 匹配(match)(贪心)
- vim 配置一:
- EF6 学习笔记(二):操练 CRUD 增删改查
- 2017CCPC秦皇岛 L题One-Dimensional Maze&;&;ZOJ3992【模拟】
- VC.文件时间
- 2018.11.01 NOIP训练 cost数(搜索+容斥原理)