我目前正在玩弄我擁有的CMS創意。它基於MonoRail,NHibernate堆棧。我知道那裏已經有一百萬個CMS解決方案。這對我嘗試一些新東西的好處更多。使用C#進行有效的自定義標籤解析#
無論如何,管理方面的事情進展良好,全流程的插件架構,但我已經打了一些道具與前端模板管理方面的事情。
我想要做的是讓開發人員編寫自己的自定義標籤,例如
<cms:news>
<h1><cms:news:title /></h1>
<p><cms:news:date /></p>
<cms:news:story />
</cms:news>
我相信這會給開發者很大的靈活性。
我正在努力的部分是解析這些標籤。我可以使用反射,但是我擔心這可能對每一頁都是相當密集的。有沒有其他人做過這樣的事情,有更好的解決方案?
對不起,信息傢伙。這裏有更多信息給你。
上述代碼將位於CMS的「頁面」中。完整的頁面標記只是一個數據庫記錄。
一旦解析器命中那裏標籤,然後需要處理它們將其轉換爲內容。在解析上面的例子就按CMS:新聞標籤並撥打電話,以這樣的
public void news()
{
// Get all of the news articles from the database
}
CMS中的功能:新聞:標題(或CMS:news.title)標籤會叫這樣的功能
public string newstitle()
{
// Return the news title for the current news element we are rendering
}
希望這是現在更有意義
感謝
約翰
我們需要更多的上下文:這些標籤在哪裏? .aspx頁面?還是你自己處理html/xml?你是否已經解析了html/xml?怎麼樣?的System.Xml?你會如何使用反射?什麼? – 2009-09-24 08:40:23