Appearance
依赖注入
依赖注入是一种软件设计模式,它允许对象在运行时接收它们所需的依赖项,而不是在编译时硬编码这些依赖项。这种模式通过将对象的创建和依赖关系的维护交给容器来管理,从而降低了代码之间的耦合度,提高了组件的可重用性和系统的可维护性。
也就是说,由容器管理的类型,所需要的一些服务对象,由容器自动注入,不需要在编码时,手动去创建这些对象。
依赖注入的方式有以下几种:
- 构造注入
- 方法注入
- 属性注入
- 变量注入
同时,在需要容器自动调用的方法中,也会自动注入,比如配置注册、静态方法实例化等
[AutoAssemble]
在依赖注入中,有一个重要的标注,就是 [AutoAssemble] 。这个标注可以作用在变量、属性、参数上,表示这个变量、属性、参数应当自动注入。同时此参数有两个属性,一个是Version,规定需要注入的版本,默认注入最高版本;一个是Reqiure,规定这个参数是否必须的,如果为true,无法实例化时,会报错,如果为false,无法实例化时,会赋值null