Unity学习笔记:依赖注入
Posted 雨~桐
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Unity学习笔记:依赖注入相关的知识,希望对你有一定的参考价值。
Unity具体实现依赖注入包含构造函数注入、属性注入、方法注入,所谓注入相当赋值,下面一个一个来介绍
1:构造函数注入
1.1当类有多个构造函数时,可以通过InjectionConstructor特性来指定某个构造函数来解析注入对象。
[InjectionConstructor] public Student(IClass _class,string name) { ToClass = _class; Name = name; }
1.2构造函数中IClass参数,如果IUnityContainer注册了多个,默认是使用无名称的那个注册,也可以通过Dependency依赖哪个名称来指定哪个来注册,代码,指定myClass名称如下。
[InjectionConstructor] public QlinStudent([Dependency("myClass")]IClass _class) { ToClass = _class; }
2:属性注入
就是Unity容器解析对象时,为属性赋值,有操作权限要Public修饰属性。属性注入方式和构造函数注入类似,只需在需要注入的属性上增加一个Dependency特性,Dependency指定一个注册名称name参数用来指定注入对象的名称,属性注入也是伴随着类型初始化时注入的,在解析时自动注入,所以解析时跟以前一样。
[Dependency("myClass")]
public IClass ToClass { get; set; }
3:方法注入
用public修饰方法,方法注入也是跟构造函数类似代码修改如下
[InjectionMethod] public void InitClass(IClass _class) { ToClass = _class; }
以上是关于Unity学习笔记:依赖注入的主要内容,如果未能解决你的问题,请参考以下文章