程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> 關於.NET >> Unity(三):快速入門

Unity(三):快速入門

編輯:關於.NET

最近patterns & practices團隊采用了一種新的文檔發布模式,就是Release版本的產品在發布的同時,將產品文檔同步到msdn中。這樣的話,如果你只想先了解下產品,或者先了解再決定是否安裝的話,可以先在msdn上浏覽,而不必安裝->看文檔->卸載。

在這裡,首先給出一個簡單使用Unity的簡單示例。通過示例,讓我們對Unity的使用有一個初步的認識和了解。在接下來的文章中,我會展開做詳細的介紹和分析。如果對Unity是還一點概念也沒有的話,可以參考我前面的兩篇文章:Unity(一):從ObjectBuilder說起,Unity(二):Unity是什麼?。

本示例主要展示了Unity在type mapping方面的一個基本應用。

使用Unity,最基本步驟有三步。

1.建立容器;

2.將接口與類的映射注冊到容器中;

3.從容器中解析出正確的對象。

為了接下來的說明,我們先編寫幾個後面需要的接口和類:

Step0.准備工作

ILogger接口:

ConsoleLogger類:

NullLogger類:

Step1.創建容器

在Unity中創建容器實例最簡單的方法是直接使用構造函數創建,如下代碼所示:

IUnityContainer container = new UnityContainer();

Step2.注冊接口映射

在Unity中提供了一組Register方法供我們在容器中注冊接口映射,如下代碼所示:

container.RegisterType<ILogger, ConsoleLogger>();

Step3.獲取對象實例

在Unity中提供了一組Resolve方法用以獲取對象實例,如下代碼所示:

ILogger logger = container.Resolve<ILogger>();

OK,就這麼簡單!

測試:

場景一:注冊一個ConsoleLogger作為ILogger的實現到容器中,然後從容器中解析ILogger的實現,並調用ILogger的Log方法。

結果:

場景二:注冊一個NullLogger作為ILogger的實現到容器中,然後從容器中解析ILogger的實現,並調用ILogger的Log方法。

結果:

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved