2010-07-08 43 views
4

我最近開始創建服務層和作出申報,如:C#:帶有服務層,接口和模擬的文件夾結構?

MyService myService = new MyService(); 
myService.DoSomething(); 

這是通過一些ASP.NET MVC視頻的啓發和我喜歡的圖案。

然後,我開始創造一個像接口和嘲笑:

IMyService myService = new MockMyService(); 
myService.DoSomething(); 

所以我可以隔離代碼來測試的部分。但現在我的業務層文件夾加載類,接口,和模擬類:

IServiceTypeA.cs 
ServiceTypeA.cs 
MockServiceTypeA.cs 
IServiceTypeB.cs 
ServiceTypeB.cs 
MockServiceTypeB.cs 
... 
IServiceTypeZ.cs 
ServiceTypeZ.cs 
MockServiceTypeZ.cs 

你如何以邏輯方式組織這些?

回答

10
- Providers 
    ServiceTypeA.cs 
    ServiceTypeB.cs 
    ServiceTypeC.cs 
- Interfaces 
    IServiceTypeA.cs 
    IServiceTypeB.cs 
    IServiceTypeC.cs 
- Testing 
    - Unit Tests 
    - Mocks 
     MockServiceTypeA.cs 
     MockServiceTypeB.cs 
     MockServiceTypeC.cs 

或者您可以使用Mocking框架在運行時生成模擬服務。

+1

+1簡單明瞭,是一個很好的開始。我也喜歡嘲笑框架的建議。 – blu 2010-07-08 01:20:07