2012-03-06 34 views
3

我正在使用Unity for IOC。我想用app.config配置moq對象的創建。 我的配置看起來有些像這樣:配置Unity(2.x)通過app.config使用Moq作爲實現

<unity xmlns="schemas.microsoft.com/practices/2010/unity"> 
    <container> 
    <register type="Namespace1.IFoo, FooInterface"     
       mapTo="Namespace2.FooImp, FooImplementation"> 
    </register> 
</container> 
</unity> 

我要尋找一種技術來指定配置一些這樣的:

<unity xmlns="schemas.microsoft.com/practices/2010/unity"> 
    <container> 
    <register type="Namespace1.IFoo, FooInterface"     
       mapTo="Moq.Mock<IFoo>, Moq"> 
    </register> 
</container> 
</unity> 

我知道我有訪問模擬的.Object屬性,但這個例子只是爲了解釋我想做什麼。

換句話說:我不想使用代碼來配置統一使用moq。一個選項當然是創建一些可以普遍使用的助手。

+1

你想最小起訂量來創建由容器或只是特定情況下創建的每個對象的實例?你如何驗證模擬的電話?你如何設置模擬的返回值? – 2012-03-06 13:20:45

+0

我想用特定的類型來做。我不想用模擬容器取代unitycontainer。我會通過限制mock到單身人士的生命週期來進行設置和驗證。 – Jaster 2012-03-06 13:28:36

+0

所以你想通過配置註冊'模擬'單身生命期,通過config告訴容器你想使用'Mock .Object'作爲'IFoo'的實現,然後你設置期望和返回值爲你的嘲笑(你必須先從容器中解析)通過代碼? – 2012-03-06 14:00:05

回答

1

在沒有人能幫助我找出一些東西。

使用工廠的起訂量,並通過統一添加一個工廠分辨率

樣品去here