我是一个非营利组织的成员,该组织要求我帮助他们重做他们的网站。
但是,他们不仅仅想要内容和设计更改,还需要一些需要后端编程的功能。例如,组织具有可用的有限插槽的“类”,人们必须提前注册。当人们报名参加课程时,他们必须提供额外的文件才能参加课程。
他们想要在这个类型中添加几个他们想要添加到网站的请求。
如果只是对现有内容进行简单的重新设计,我建议他们使用Wordpress或任何其他标准CMS来更新其外观。但由于他们也想要这些附加功能,我不确定如何继续。
我还没有机会对MVC网站进行编程,所以我认为我会把它作为学习MVC的机会。与此同时,我不想重新发明轮子。所以我正在考虑使用像Orchard这样的CMS,它使用的是MVC,但显然非常易于扩展。
使用Orchard对这种情况有意义吗?如果没有,为什么不呢? CMS还有其他建议吗?我也在看Umbraco,因为看起来他们的最新版本正在使用MVC,但后来我读到它有点儿错误并且缺少旧版本中的一些功能。那么我不确定这是否是正确的方法。
最后,我甚至不确定我是否应该使用CMS!我想知道如果我从头开始做一个应用程序,我是否会更好地学习MVC。在这种情况下,我正在考虑使用CMS作为Web内容,然后将“应用程序”部分编程为一个单独的Web应用程序,该应用程序已链接到其主站点(可能是register.mysite.com)。
我只是在寻找建议和指导。如果你穿我的鞋子,你会怎么做?
我的日常工作是大型组织的开发人员。我主要使用.NET编写业务Web应用程序。但是我们还没有任何MVC应用程序,所以我的MVC技能基本上不存在。我想学习MVC,但我也想在适当的时候回到非盈利组织。
....所以你......它就是......
答案 0 :(得分:8)
使用开源CMS并不是一个坏主意,但我个人不喜欢不使用它们。甚至是official ASP.NET site is using Umbraco。
我不建议使用 WordPress ,因为它是用 PHP 编写的,而您是 .NET 开发人员。 WordPress 功能强大且可扩展,但是基于 .NET的CMS 会更好。您可以完全理解它并进行任何您想要的更改。
我 个人 更愿意开发自己的框架和环境。 为什么?因为在 我的观点 中,开源CMS框架提供的功能超出了需求并为其开发模块有时是一个很大的挑战。大多数时候,我可以开发客户想要的简单的Web应用程序。客户端不想要CMS功能(例如:添加页面,添加新闻等),所以我选择自己的框架。 但请记住,这只是我的个人意见 。
返回CMS:
我没有尝试 Umbraco ,但我看了一下 Orchard 的来源。 真的很大!代码非常复杂!
如果我在你的鞋子:
首先,我将测试开源CMS(特别是使用MVC构建的Umbraco)。我会开发一些Hello World!它的模块,如果它很好,很容易,我会继续使用它。
但通常我最终会开发自己的网络应用。我使用MVC,我建议你也使用它。
以下是使用MVC开发的一些不错的开源应用程序。此外,还使用了工作单元,存储库模式等设计模式:
答案 1 :(得分:3)
即使使用umbraco / joomla或任何其他CMS,如果不编写自定义代码,也不会完成此操作。既然你已经拥有了网络开发经验....给MVC一个机会。核心编码是一样的...... MVC使得很多设计变得容易 和结构化的。
答案 2 :(得分:2)
我会选择一个MVC应用程序,因为它对您来说是一个很好的学习经历,并且可以添加到您的简历中。无论如何,如果您不熟悉当前的任何CMS解决方案,可能需要相同的时间来设置,配置和编码您想要的模块,因为它将从头开始制作一个简单的MVC应用程序。