C#:具有服务层,接口和模拟的文件夹结构?

时间:2010-07-08 01:14:46

标签: c# code-organization project-structure directory-structure

我最近开始创建服务图层并进行如下声明:

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

如何以合理的方式组织这些?

1 个答案:

答案 0 :(得分:12)

- 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框架在运行时生成Mock服务。