我有一个包含两个命名空间,接口和服务的项目。每个服务实现其相应的接口。现在我需要方法声明来包含为一个服务声明的枚举。我将哪个命名空间放入枚举中?如果我把它放在服务中,我需要在Interfaces中引用服务,这很丑陋。在界面中使用它会很整洁,但这不是真正属于枚举的地方。建议将此枚举放在哪里将受到欢迎。何处定义由接口和实现共享的枚举?
4
A
回答
1
我会推荐一个通用名称空间/程序集引用的两个。您的DTO /实体在哪里定义?这可能是理想的位置。
0
我的界面和服务项目都会引用一个通用项目,其中包括需要在所有项目中共享的类型/枚举。
1
通常,数据访问接口(存储库)在与模型相同的名称空间中定义。由于枚举是模型的一部分,因此它也属于该模型。
也许如果你重新考虑命名命名空间Interfaces
,而是使用一个更具体的域名 - 例如Clients
,Accounts
等,定义接口与它们一起使用的类型会更自然。
1
在我们的系统中,我们有一个名为Entities的名称空间/程序集,其中包含所有接口,类型和枚举定义。然后从服务器项目(实现接口)和客户端项目(通过接口调用服务器)中引用它。 这对我们的要求非常有效。
相关问题
- 1. 在c#接口实现枚举和接口的方法签名
- 2. 如何共享接口实现
- 3. 枚举实现给定接口的所有Delphi类?
- 4. 泛型和接口枚举
- 5. 如何要求泛型参数是实现接口的枚举?
- 6. 如何枚举实现通用接口的所有项目?
- 7. 我该如何跟踪(枚举)实现接口的所有类
- 8. 实现定义的接口
- 9. 如何从接口获得一个枚举到实现该接口的类?
- 10. 接口与枚举
- 11. 使用PowerShell枚举Linux的SMB共享
- 12. 枚举之间的共享方法
- 13. 处理实现通用接口的枚举(迭代,反序列化)
- 14. 实现接口的枚举类型映射集合
- 15. 与WCF服务共享枚举
- 16. 包括枚举从域GWT共享类
- 17. 使用C#枚举网络共享
- 18. MySQL:我可以共享枚举吗?
- 19. 行为来模拟一个枚举实现一个接口
- 20. 正确类型进口零部件不共享接口实现
- 21. 如何将字符串转换为正确的枚举常量(实现通用接口的多个枚举)?
- 22. 如何限制访问由其他公共接口实现的内部接口
- 23. 如何实现定义另一个接口元素的接口
- 24. 枚举V5接口设计
- 25. 实现一个枚举ForwardIndexType
- 26. 如何实现此公共访问枚举
- 27. 定义接口中的类实现
- 28. 共享在WCF服务中实现的接口
- 29. 枚举Windows网络共享及其中的所有自定义权限
- 30. Java接口强制定义枚举类型
最后说明了最有意义的。我把它放在了BusinessObjects程序集中。虽然它不是一个真正的商业业务对象,但BO实际上只是DTO的,所以它们也不是真正的业务:-) – ProfK 2010-07-15 12:12:57