简体   繁体   English

在 ASP.NET MVC 中构建 CMS

[英]Building a CMS in ASP.NET MVC

I'm curious to know if any basic CMS code has been written for ASP.NET MVC.我很想知道是否为 ASP.NET MVC 编写了任何基本的 CMS 代码。

The reason I ask is, I'm making a data-driven website for a client, and I've already spent a significant amount of time building it from the ground-up in MVC, but now the client wants content management facilities.我问的原因是,我正在为客户制作一个数据驱动的网站,并且我已经花费了大量时间在 MVC 中从头开始构建它,但现在客户需要内容管理设施。

Basically they want to be able to add/edit/remove articles and have revision control.基本上,他们希望能够添加/编辑/删除文章并进行修订控制。

It would be great if I could somehow 'bolt on' the content management without having to start again from scratch, developing it under an existing CMS.如果我能够以某种方式“加强”内容管理,而不必从头开始,在现有的 CMS开发它,那就太好了。

Should I build the article management and revision control myself, or should I re-use some existing package?我应该自己构建文章管理和修订控制,还是应该重新使用一些现有的 package?

N2 does what you describe - "bolts on" to existing ASP.NET solutions (including MVC). N2执行您所描述的 - 对现有 ASP.NET 解决方案(包括 MVC)的“螺栓固定”。

Also, kooboo is interesting http://www.kooboo.com另外,kooboo 很有趣http://www.kooboo.com

(I know this question is old, but it still comes high up for the relevant search terms.) (我知道这个问题很老,但对于相关的搜索词来说它仍然很高。)

Today I discovered Meek, http://www.adventuretechgroup.com/labs-meek/ , and it was very simple and unobtrusive to add to my MVC project, which I believe is what the original poster would have wanted - bolting on CMS as a feature rather than having it take over your entire site.今天我发现了 Meek, http://www.adventuretechgroup.com/labs-meek/ ,添加到我的 MVC 项目中非常简单且不显眼,我相信这就是原始发布者想要的 - 将 CMS 固定为一个功能,而不是让它接管您的整个网站。

Piranha CMS is well suited to bolting on to an existing application. Piranha CMS非常适合连接到现有应用程序。 The author of it describes why and how here .它的作者在这里描述了为什么以及如何 To quote straight from that source:直接从该来源引用:

"Our focus is content management and to have a transparent and lightweight API for developers. Piranha CMS has almost no components or helpers that render any HTML at all, it simply provides a database, a manager interface and a routing mechanism for retrieving the correct data for the current request. “我们的重点是内容管理,并为开发人员提供透明且轻量级的 API。Piranha CMS 几乎没有渲染任何 HTML 的组件或助手,它只提供一个数据库、一个管理器接口和一个用于检索正确数据的路由机制对于当前请求。

In the case of you having an existing website you could actually bypass the routing completely, add one page at a time in the manager interface and then manually load the Page model in you existing page.如果您拥有现有网站,您实际上可以完全绕过路由,在管理器界面中一次添加一个页面,然后在现有页面中手动加载页面 model。 This would allow you to keep your original application exactly the same but manage the content form the manager interface."这将允许您保持原始应用程序完全相同,但通过管理器界面管理内容。”

If you are still looking, I've published my new open source CMS here:如果你还在寻找,我在这里发布了我的新开源 CMS:

I'm actively working on it so I will push more updates soon.我正在积极努力,所以我会尽快推送更多更新。

Here is also a quick summary as to how Telerik Sitefinity does it:这里还简要介绍了 Telerik Sitefinity 如何做到这一点:

http://www.sitefinity.com/mvc-cms http://www.sitefinity.com/mvc-cms

in brief - allows you to plug in standard system.web.mvc.controller classes as widgets, lets you use the API for anything including model binding, standard Razor for a view engine etc. in brief - allows you to plug in standard system.web.mvc.controller classes as widgets, lets you use the API for anything including model binding, standard Razor for a view engine etc.

Heve a look at AtomicCms it's a free open source content management system based on ASP.NET MVC 1.0 http://atomiccms.codeplex.com看看 AtomicCms,它是一个免费的开源内容管理系统,基于 ASP.NET MVC 1.0 http://atomiccms.codeplex.Z4D236D9A2D102C5ZFE6AD1C50DA4BEC5

Check for Orchard;-) It is based on asp.net mvc.检查果园;-) 它基于 asp.net mvc。

There is also Oxite which I believe is more of a blog engine.还有Oxite ,我认为它更像是一个博客引擎。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM