随着时间的推移,我维护的代码库呈指数级增长。我们有各种不同的实用程序类、Web 部件、事件接收器、控制台应用程序等等。
通常,每个 Web 部件都位于一个单独的 DLL 中(每个 Web 部件一个解决方案和一个项目)。我们的实用程序类也已在很大程度上分离到它们自己单独的 DLL 中(这包括任何专门的列表访问类,这些类与它们的 bean 一起组合在一个 DLL 中)。这导致大量解决方案变得更难维护(将每个解决方案升级到 Visual Studio 2008,或者只是试图找出 DLL 引用的迷宫)。
随着我对 SharePoint Guidance 的发现,我正在重新评估我们当前的代码结构。例如,他们似乎建议将所有专门的列表访问类组合到一个存储库中(到目前为止,我们完全相反,根据代码的“解决方案”将它们拆分为 DLL)。
问题:我应该如何组织我的代码?您如何决定什么进入解决方案、项目、文件夹或命名空间?每个 Web 部件一个解决方案?
最佳答案
我通常按功能组织我的代码。假设我有一个外联网项目和一些内联网 webpart 的代码,我将它分成外联网和内联网项目,并将不同的代码类(eventreceivers、timerjobs、webpart 等)分离到不同的命名空间中。 这样,如果我愿意,我可以将(子)功能集部署到不同的农场,并且在编辑代码时,我在同一个地方获得了相互依赖的所有内容:)
关于c# - 我应该如何组织我的 SharePoint 代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3213817/