【发布时间】:2011-03-10 09:28:28
【问题描述】:
我需要一些帮助来确定为我的最新项目使用 CMS 或门户解决方案是否是一个好主意,该项目是(当前)必须为多个客户(作为公司或来自单个安装(即SaaS 解决方案)的其他具有用户列表的实体。
除了包括文档管理/发布在内的核心功能外,我还需要提供基本的社交功能(例如博客、论坛、图库、投票等)。然而,内容必须只对其所属的客户可见,而我对一堆 CMS 和门户解决方案的评估并没有说明它们是否支持这一点。他们非常关注单用户安装,关于如何与现有 MVC 解决方案集成的文档非常少。
基本上,我正在寻找一些指导来帮助我放弃死胡同(产品不符合要求、施加太多限制、不成熟等),并在走得太远之前找到未探索的选项项目。
我对架构的要求包括:
- 多站点支持(使用单个域进行托管)
- 客户之间的内容无缝分离
- 跨组件/功能的完全集成
- SSO(单点登录)
- 单站点体验(共享页眉/页脚、统一导航、统一标签等)
- 易于开发和部署
- 自定义逻辑将使用 C# 和 ASP.NET MVC 编写,任何产品都应支持这一点
- 我想保持控制
- 解决方案应提供功能,但不妨碍(例如,不要强迫我使用愚蠢的习语,比如坚持为主键使用 GUID)
- 活跃的开发社区
- 没有一个人的努力
- 最近的源代码控制活动
- 合理的文档水平和成熟度
- 不必是开源的
我花了相当多的时间评估产品和组件,我将在这里简要分享一下:
-
Umbraco
- 不支持 ASP.NET MVC(但是,有人一定会另外评论)
- 强大的社区支持,积极发展
- 似乎需要做很多工作才能开始
-
Kooboo
- 没有源活动(近两个月没有更新)
- GPL 许可? (需要允许闭源应用程序的东西)
-
N2CMS
- 部分 ASP.NET MVC 支持
- 每个客户都必须有一个单独的域
- 有限的源活动(不死,但也不活跃)
-
Orchard
- Microsoft 赞助(这意味着它可能过度架构、代码臃肿且运行缓慢,尽管它确实有一些知名且受人尊敬的贡献者/领导者)
- 使用 ASP.NET MVC 构建
- 在功能方面看起来很有希望(但现阶段不太可能稳定)
-
AtomSite
- 感觉相当成熟,文档也不错,尽管有漏洞
- 使用 ASP.NET MVC 构建
- 源代码活动有限,单一开发者
-
MojoPortal
- 看起来不错的门户,但可能需要将自定义逻辑构建为产品周围的模块(我希望尽可能避免这种锁定)
-
DotNetNuke (DNN)、CommunityServer 和 Microsoft Office SharePoint Server (MOSS)
- 绝对不是我的那杯茶;)
-
BlogEngine.NET
- 成熟且功能齐全
- 不支持 ASP.NET MVC
- 可以集成,但不能没有大量的 Web.config voodoo
- 不确定是否支持客户分离
鉴于上面的列表,我倾向于 AtomSite、N2CMS、Orchard 或 BlogEngine.NET。如果我选择后者,我将使用 jitbit AspNetForum,它非常适合我的需求。
我可能更喜欢使用自定义 ASP.NET MVC 解决方案和单个组件,因为这可能会给我最大程度的控制,但另一方面,它会使网站主题化和集成更加困难。您尝试过哪些组合,哪些效果很好,哪些效果不佳?我在评估中遗漏了什么重要的东西?还有其他相关建议吗?
如果答案不仅仅是对您最喜欢的产品或做事方式的认可,而是可以帮助我根据上述要求选择或消除候选解决方案的内容,我将不胜感激。
【问题讨论】:
-
+1 我见过的最佳设计提案。我希望有人给你很好的反馈。我会进行更深入的研究,看看能否给你一些建议。
-
谢谢,期待您的发言!
-
是的,这是一个很好的简介。前几天有人试图告诉我他们的两句话简介是他们的“要求”文档,当我要求提供更多信息时他很生气。
-
尽了最大的努力,希望我能在这堵文字墙中吐出一些有用的东西。
-
+1 谢谢,您的问题为我节省了一些最初的跑腿工作。我一直专注于 Atomsite 或 Orchard 在这两个方面与您有同样的担忧
标签: c# asp.net-mvc content-management-system components portal