我喜欢将接口和实现分开的想法.但是如何分开?接口定义是否在单独的.Net程序集中?您是否有一个项目定义解决方案的所有接口?否则接口的循环依赖性存在问题?
将您的域对象和接口放在一个单独的"域"程序集中. 除了核心.net程序集之外,此程序集不应引用任何内容.
通过这种方式,您可以从域/服务模型和实施中获得清晰的分离.
编辑:http : //jeffreypalermo.com/blog/the-onion-architecture-part-1/