zoukankan      html  css  js  c++  java
  • Unity学习笔记(4):依赖注入

    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; 
    }
  • 相关阅读:
    .net面试--值类型和引用类型
    Centos7下安装Docker(详细的新手装逼教程)
    C# 开源框架(整理)
    service配置文件
    kafka消息队列、环境搭建与使用(.net framework)
    消息队列
    并发、并行、同步、异步、多线程的区别
    破解studio 3T
    HM后台(二)
    HM后台(一)
  • 原文地址:https://www.cnblogs.com/piscesLoveCc/p/5519535.html
Copyright © 2011-2022 走看看