DTcms Beta2 内置模板引擎初体验

2011/5/9 14:36:25

前言 做过网站的朋友都对CMS很熟悉,有的朋友也接触过N多CMS系统,国内比较流行的有dedeCMS,phpCMS,帝国CMS,KingCMS,PowerEasyCMS等等,他们都有个共同的特点,就是前台的实现是模版标签机制。1、DTCMS Beta2 模板引擎工作原理 所谓最好的服务就是没有服务,最好的治…

前言

    做过网站的朋友都对CMS很熟悉,有的朋友也接触过N多CMS系统,国内比较流行的有dedeCMS,phpCMS,帝国CMS,KingCMS,PowerEasyCMS等等,他们都有个共同的特点,就是前台的实现是模版标签机制。

1、DTCMS Beta2 模板引擎工作原理

    所谓最好的服务就是没有服务,最好的治安就是没有公安。哈哈,那都是吹的,但是细想也并非完成没有道理!我本人不喜欢复杂的东西,面对于N多种CMS模板引擎的种种语法,我实在是没有心思去研究,所以,我一直不喜欢用模板的CMS开发网站!

    我一直在想,有没有一种可以不用学习的模板机制,一拿来就上手,而且它的扩展非常方便,随便可以增删页面?所以DTCMS模板引擎应运而生了!暂不谈它的性能和缺点,我用起来就是挥手自如。


    细看这张图,用过Discuz!NT的朋友都觉得眼熟,对,我承认和Discuz!NT相似,大家都是生成aspx文件。

2、功能和扩展

    模板语法:说白了,DTCMS Beta2 根本没有语法,它的语法都是C#,实际上你在模板页所看到的标签,都是你自己在里面自定义的变量或方法,所以你也可以当它是一个aspx页面来编辑,这是不安全的,但是可调试,哈哈!这对于程序员来说是件多么幸运的事情,但对于不懂C#的人说,的确是有难度,这是我知道的,不急,我们以后会考虑到的!

    模板嵌套:模板页面还可以嵌套其它静态页,我设定了5层,也就是说你可以嵌套5层,如:“<%template src=/_header.htm/%>”,咳咳,看到了吧,src表示路径,_header.htm表示文件。

    支持ascx用户控件:默认生成ASPX文件的时候,在头部已经为该页面统一注册了控件<%@ Register TagPrefix="DtContorl" Namespace="DtCms.Web.UI" Assembly="DtCms.Web.UI" %>,所以大家在用的时候只要这样:<DtControl:LoadControl ID="Header" Src="header.ascx" runat="server" />就可以了!方便不,不用再像以前那个每用一个ascx控件都要注册一次,那样多麻烦啊。

    支持Repeater控件:对于模板引擎,我本来是想抛弃控件的,但是后来发现,用控件去绑定比自己写方法的效率要高多了,既然已经C#化了,那就C到底吧,所以我又对原来的Repeater控件做了扩展。<DtContorl:Repeater ID="rpt1" runat="server" onload="Article_List_DataBind" Top="8" Where="IsLock=0">,我只想对懂C#的朋友说一句,你懂的。

微信扫一扫