新闻系统(1)之模板机制

新闻系统之模板机制

我们在做cms,bbs,或者多用户商城的时候,都会遇到模板机制。现在大多系统采用的都是老办法,做一个html文件,里面加上变量,再用一支程序读出这个html,替换里面的变量,输出要显示的内容。这个办法当然不错,因为很多人都在用嘛。

但是,在asp.net下,更好的实现却不是这样做。iwms新闻系统虽然没有开源,但是根据其模板的置放方式就能看出,iwms采用的绝对不是这样一个办法。在asp.net中,代码也页面本来就是分开的,简单来讲,aspx文件也就是一个模板,cs文件负责程序逻辑。经过多年的发展,我们可以看到,asp.net这种模板机制是很有效果的。代码的分离使得代码更清晰,程序员和美工的工作更容易配合。那么我们怎么利用asp,net的这种模板机制建立我们的多模板效果呢。

简单来讲,一个aspx文件是通过其顶部的配置文件链接到相应的程序文件的。

比如news_list_main.aspx文件的链接。

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="news_list_main.aspx.cs" Inherits="news_list_main" %>

其实我们还可以在另外一个aspx文件中也使用这个连接

比如在news_list_001.aspx中也使用这样的链接。

那么两个页面的内部程序是一样的,根据自己的不同需求调整版面就可以实现不同的显示效果了。

到这里工作并没有完成。因为虽然显示效果不一样,但是却不是在同一个页面上显示的。我们可以做一个跳转中心。
news_list.aspx--news_list.aspx.cs
news_list.aspx中只有一行代码

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="news_list.aspx.cs" Inherits="news_list" Title="Untitled Page" %>

我以上是新闻列表的页面。我们事先在新闻分类的数据库中增加了一个templets_List字段,用于保存该分类的模板文件。

识别判断的程序如下:

 

Code

 

到此,我们的模板机制就完成了。你要新添加模板的时候。只需要复制一个news_list_main.aspx文件,重命名后,修改里面的呈现效果就行了,在里面你可以任意调整布局,控件选择,新增加控件等。

效果演示

http://www.21nm.net/html/c34/page1.html

http://www.21nm.net/html/c23/page1.html

http://www.21nm.net/html/c17/page1.html

以上三个链接你可以看到,格式是一样的。只是分类不一样。列表的效果却不一样。

 

在园子的处女技术文章,欢迎大家拍砖。

posted on 2008-10-11 16:21  斯文  阅读(2239)  评论(27编辑  收藏  举报

导航