2012-04-06 74 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