在.NET项目中应该有哪些辅助类的最佳实践是什么?引用与业务层事物分开的类,但是appSetting配置管理器和其他有时特定于模块或有时在整个应用程序中使用的代码的演示和应用程序。
答案 0 :(得分:19)
我总是允许这样的事情变得非常流畅。那说:
答案 1 :(得分:2)
我的解决方案中几乎总是有一个MyProject.Core类库,我把它放在那里。
编辑:我可能已经回答了一个“更大”的问题。
在一个项目中,这一切都取决于项目的规模。 Microsoft设计指南谈到,如果你有少于五个(如果我对这个数字有误的话),那么你不应该创建命名空间。
答案 2 :(得分:2)
我倾向于组合Randolpho和Ben所做的事情:我在Utilities命名空间的“Utilities”文件夹中使用静态助手类。更好的文件组织,保持应用程序命名空间的其余部分清晰。
答案 3 :(得分:1)
我们大多数人只是将它们放在“助手”文件夹中。
根据帮助程序的不同,您可能希望将方法标记为虚拟,以便在必要时进行模拟。那或者绑定到它实现的接口,但是如果你每个接口只有一个具体的它可能是矫枉过正的。
除非辅助方法是纯粹的计算而没有外部依赖,否则它们在任何情况下都不应该是静态的。
即便如此,重新考虑。
答案 4 :(得分:1)
我倾向于将它们放在utils命名空间中。在主项目命名空间中,如果它们非常通用,例如MyProject.Utils.MyHelperClass
,或者如果它们更具体,则为子命名空间MyProject.CRM.Utils.MyCRMHelperClass
。
答案 5 :(得分:1)
我们将这些类放在一个名为Common
的程序集中,例如,除了帮助程序需要使用某些商务对象或核心对象的情况外,所有需要它的项目都会引用它们。