2012-04-06 24 views
0

我试图将我用php编写的自定义cms切换到.net c#。我正在考虑使用cms作为一个学习项目。我打算使用C#,NHibernate ORM层,mssql,mvc3和jquery。另一个.net自定义cms

我知道有很多广告或开源的CMS,但我仍然会花一些空闲时间尝试学习像这样的项目上工作的新技术。

那么,有没有人在那里谁愿意创建CMS领域模型,有用的链接,思想等

感谢

回答

2

A股的一些想法很基本的CMS由3个部分组成:

  • 一个数据库表,用来放置您的“页面”。表结构是“名称”和“内容”
  • /cms/pagename类型的请求变换为固定控制器的路由,该方法称为cmspagename作为参数
  • 一个可嵌入的HTML编辑器现在

,有两种方式可以调用你的“页面”。它是创建模式或查看/编辑模式。

在“创建”模式下,页面被请求,但它不在数据库中(例如cms/announcement1)。在这种模式下,您创建一个由HTML编辑器组成的视图,并在提交时将该页面保存到数据库。

在“查看”模式下,页面被请求并且是数据库中的IS。您可以执行任何必要的重写(例如,将表单[cms/pagename]的内部链接重写为完全可路由的http地址)并呈现内容。

如果用户被授权编辑页面,您还会显示一个“编辑”按钮,然后调用带编辑页面的HTML编辑器。

就是这样。

有很多额外的元素(缓存,不同的内置页面类型,嵌入图像,youtubes,预格式化文本)等等,但所有这些都是可选的,你可以引入新功能,当你已经实现了核心。

一旦我按照上面的结构写了一个简单的CMS,它是一个更大的解决方案的一部分,直到现在它已被成功地部署了几百次。自定义CMS的一个优点是它可以非常简单并且容易维护。

+0

如果我理解正确,你有bulding自定义cms expirience。您的系统是否启用了插件?我非常有兴趣构建可扩展系统,不知道从哪里开始。 – BobRock 2012-04-06 20:46:14

+0

没有。还有一些其他功能涉及文件上传/下载和内置页面模板,但没有插件。 – 2012-04-06 20:50:14