<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      Enterprise Library 4.0中的依賴注入容器(Unity)預覽

      概述

      之前我曾發過一篇Enterprise Library 4.0開發計劃中提到微軟在Enterprise Library 4.0將加入依賴注入容器,暫定名為DIAB,現在微軟終于給它起了個正式的名字Unity,難道是“團結”的意思?:),在Unity最終將以兩種形式發布:獨立的容器組件和作為Enterprise Library 4.0的一部分,用微軟的話說“它是一個輕量級的、可擴展的依賴注入容器”,在ASP.NET MVC Framework推出后引起了業界極大的討論“MS MVC框架漩渦中的MonoRail未來”,不知道Unity推出之后會不會再出現一場“Unity漩渦中的Castle Windsor未來”或者“Unity漩渦中的Spring.Net未來”的討論。這里先帶您提前預覽一下Unity。

      Unity預覽

      在Unity中將提供Register方法來注冊對象映射,使用Get方法獲得對象的實例,基本API如下:

      public class UnityContainer : IDisposable
      {
          // getting objects
          public T Get<T>(string key) { }
      
          public IEnumerable<T> GetAll<T>() { }
      
          // type mapping
          public UnityContainer Register<TFrom, TTo>(string key) where TTo : TFrom { }
      
          // singleton support
          public UnityContainer SetSingleton<T>(string key) { }
      
          // support for registering existing objects
          public UnityContainer RegisterInstance<T>(T existing, string key, bool overload) { }
      
          // running existing objects through the container
          public T BuildUp<T>(T existing, string key) { }
      }

      典型使用

      在Unity中,我們可以像如下代碼這樣加入組件:

      UnityContainer container = new UnityContainer()
                    .Register<ILogger, TraceLogger>()
                    .Register<ISomething, Something>();
      獲取對象實例:
      ISomething some = container.Get<ISomething>();

      用過Castle的朋友一定還記得,這似乎和Castle中的IOC容器非常像,在Castle的IOC容器中加入組件:

      IWindsorContainer container = new WindsorContainer( new XmlInterpreter("http://www.rzrgm.cn/BasicUsage.xml") );
      
      container.AddComponent( "txtLog", typeof(ILog), typeof(TextFileLog) );
      
      container.AddComponent( "format", typeof(ILogFormatter), typeof(TextFormatter) );

      獲取對象實例:

      ILog log = (ILog)container["txtLog"];

      二者是不是有幾分相似呢?不知道Unity會給我們帶來哪些驚喜?

      結束語

      在ASP.NET MVC Framework推出后引起了業界極大的討論“MS MVC框架漩渦中的MonoRail未來”,不知道Unity推出之后會不會再出現一場“Unity漩渦中的Castle Windsor未來”或者“Unity漩渦中的Spring.Net未來”的討論。不管怎么說,微軟推出Unity,我們又多了一種可供選擇的依賴注入容器。
      參考:DIAB is now Unity

      posted @ 2008-01-16 00:09  TerryLee  閱讀(14994)  評論(61)    收藏  舉報
      主站蜘蛛池模板: 国产无遮挡又黄又爽不要vip软件| 中文字幕av中文字无码亚| 日本免费一区二区三区最新vr | 日本一区二区三区视频一| 亚洲欧洲精品日韩av| 性男女做视频观看网站| 国产精品成人av电影不卡| 国产三级精品三级| 老熟妇欲乱一区二区三区| 97se亚洲综合自在线| 精品久久精品午夜精品久久 | 久久精品亚洲精品国产区| 无码人妻精品一区二| 国自产在线精品一本无码中文 | 亚洲日韩国产精品第一页一区 | 人妻少妇88久久中文字幕| 福海县| 亚洲十八禁一区二区三区| 亚洲AV成人片不卡无码| 久久亚洲色WWW成人男男| 亚洲综合在线一区二区三区| 成在线人永久免费视频播放 | 国偷自产一区二区三区在线视频 | 欧美成人va免费大片视频| 欧美高清一区三区在线专区| 日韩狼人精品在线观看| 久久香蕉国产线看观看猫咪av| 无码国产偷倩在线播放| 一区二区三区放荡人妻| 久久毛片少妇高潮| 国产精品亚洲专区无码破解版| 亚洲精品日韩在线观看| 久久av高潮av喷水av无码| www内射国产在线观看| 久久天天躁夜夜躁狠狠综合 | 亚洲大尺度一区二区三区| 国产69精品久久久久人妻刘玥| 亚洲国产片一区二区三区| 中文字幕人妻日韩精品| 又粗又大又黄又硬又爽免费看| 欧美亚洲综合久久偷偷人人|