上篇讲到了3种注入的方式,注入的对象都是由Unity为我们自动创建的。有时候我们需要注入已经存在的对象。
代码如下:
//使用已有实例注入 ISomeBiz someBiz = container.Resolve<ISomeBiz>("ConfigBiz"); someBiz.SomeInt = 101; IClass class11 = container.Resolve<IClass>("ConfigClass1", new ParameterOverride("someBiz", someBiz)); class11.ShowInfo(); IClass class22 = container.Resolve<IClass>("ConfigClass2", new PropertyOverride("SomeBiz",someBiz)); class22.ShowInfo();
可以看到,对于构造器注入和属性注入,Unity都支持既有对象的注入。
本文基于
Creative Commons Attribution 2.5 China Mainland License发布,欢迎转载,演绎或用于商业目的,但是必须保留本文的署名
http://www.cnblogs.com/luminji(包含链接)。如您有任何疑问或者授权方面的协商,请给我留言。