首页 > 其他分享 >Unity Application Block 3月12 发布的版本

Unity Application Block 3月12 发布的版本

时间:2022-11-29 10:01:51浏览次数:61  
标签:12 Dependency Application Unity 版本 Block 注入

3月12日,Unity 又发布了正式发布之前的版本,这个版本提供了安装程序.并且提供了一个依赖注入在实现方式:Setter injection 的配置API。之前发布的版本,属性注入需要用[Dependency], 这种设计Unity就侵入到你的组件了。现在可以通过ConfiguringInjection。

3月12日,Unity 又发布了正式发布之前的版本,这个版本提供了安装程序.并且提供了一个依赖注入在实现方式:Setter injection 的配置API。之前发布的版本,属性注入需要用[Dependency], 这种设计Unity就侵入到你的组件了。现在可以通过​​ConfiguringInjection​​。

例如StoplightPresenter依赖于Stoplight 和StoplightSchedule ,可以在属性打标签[Dependency],也可以去掉这个标记,然后在UnityContainer内通过配置API配置:

public class StoplightPresenter
{
        private Stoplight stoplight;
        private StoplightSchedule schedule;

        //[Dependency]
        public Stoplight Stoplight
        {
            get { return stoplight; }
            set { stoplight = value; }
        }

       // [Dependency]
        public StoplightSchedule Schedule
        {
            get { return schedule; }
            set { schedule = value; }
        }

        private IStoplightView view;

……

}

配置代码如下:

     IUnityContainer container = new UnityContainer()
                .AddNewExtension<SimpleEventBrokerExtension>()
                .RegisterType<ILogger, TraceLogger>()
                .RegisterType<IStoplightTimer, RealTimeTimer>();
     container.Configure<InjectedMembers>()
                .ConfigureInjectionFor<StopLight.Logic.Stoplight>(
                new InjectionProperty("Logger")
                );

     container.Configure<InjectedMembers>()
                .ConfigureInjectionFor<StoplightPresenter>(
                new InjectionProperty("Stoplight"),
                new InjectionProperty("Schedule")
                );

Unity Application Block虽然发展时间不长,主要是基于从企业类库2.0开始出现的ObjectBuilder发展而来,下一个微软Enterprise Library的版本V4——将预置支持依赖注入。依赖注入将通过容器以独立或作为库的一部分来提供。需要更深入的学习Unity Application Block,可看园子里的​​TerryLee​​、​​doriandeng​​和​​overred​​的相关文章:

TerryLee的​​Unity Application Block​​

​​依赖注入容器Unity Application Block(1):快速入门​​  
​​Enterprise Library 4.0中的依赖注入容器(Unity)预览​​

doriandeng的​​Unity​​

​​使用 Unity(一):Unity 应用程序块容器介绍​​

​​使用 Unity(二):配置 Unity 、读取配置信息和获取对象​​

​​使用 Unity Application Block(三):理解和使用依赖注入的键​​

​​Unity Feb 26 Weekly Drop​​

overred的 ​​① NET Framework ​
依赖注入容器Unity Application Block(2):Unity的春天   

顺便学习一下英语的还可以看: 

​Unity Dependency Injection IoC Screencast​

​Unity IoC and ASP.NET MVC Framework - Dependency Injection of Controllers​

​Unity Nested Containers - IUnityParentContainer and CreateChildContainer​

​Unity IoC - February 26 Weekly Drop - LifetimeManagers TearDown Extensions and IDisposable​

​Using Unity and the ASP.NET MVC Preview 2​



 



 



 



标签:12,Dependency,Application,Unity,版本,Block,注入
From: https://blog.51cto.com/shanyou/5894084

相关文章

  • 在Unity中使用C#调用C++动态链接库(DLL)
     在Unity中使用C#调用C++动态链接库(DLL)https://blog.csdn.net/qq_51456342/article/details/125693678 [FNote: 属性页中无C++项时,要先写点代码编译一下,就有了]......
  • 盘点12个 yyds 的低代码开源项目
    低代码是基于可视化和模型驱动理念,结合云原生与多端体验技术,它能够在多数业务场景下实现大幅度的提效降本,为专业开发者提供了一种全新的高生产力开发范式。下面就来分......
  • 20221126测试赛
    20221126测试赛Doc84.孤独照片时间限制:1.0s内存限制:256.0MB输入文件名:lonelyphoto.in输出文件名:lonelyphoto.out试题来源:USACO问题描述FarmerJohn最近购入......
  • 29.1227
    #include<stdio.h>intmain(){ inti,j,n,a[50],b[50],k,l,m; scanf("%d",&n); for(i=0;i<n;i++) {scanf("%d%d",&a[i],&b[i]); } for(i=0;i<n;i++) {for(j=1;j<b[......
  • 0129-Go-随机数
    环境Time2022-08-25Go1.19前言说明参考:https://gobyexample.com/random-numbers目标使用Go语言的随机数。示例packagemainimport("fmt""math......
  • 0121-Go-字符串格式化
    环境Time2022-08-25Go1.19前言说明参考:https://gobyexample.com/string-formatting目标使用Go语言的字符串格式化。示例packagemainimport("fmt"......
  • 0120-Go-字符串函数
    环境Time2022-08-25Go1.19前言说明参考:https://gobyexample.com/string-functions目标使用Go语言的字符串函数。示例packagemainimport("fmt"......
  • 0122-Go-模板字符串
    环境Time2022-08-25Go1.19前言说明参考:https://gobyexample.com/text-templates目标使用Go语言的模板字符串。示例packagemainimport("os""t......
  • 0123-Go-正则表达式
    环境Time2022-08-25Go1.19前言说明参考:https://gobyexample.com/regular-expressions目标使用Go语言的正则表达式。示例packagemainimport( "bytes" ......
  • 0124-Go-JSON 转换
    环境Time2022-08-25Go1.19前言说明参考:https://gobyexample.com/json目标使用Go语言的JSON。简单值packagemainimport("encoding/json""fmt......