模板引擎的一种实现

2008-08-11 11:23:20.0     浏览:1603     来源:中国IT实验室
关键词:  aspx     模板引擎  

那么我们来和ASP.NET本身的代码做一个比较

aspx页面
aspx.cs文件
User us = new User();
us.Name = "xxsssx";
us.Value ="80";
Name.Text=us.Name;
Mail.Text=us.Value


就我个人来看,模板引擎是需要的。视图和控制的分离是必要的,但是我们要分清楚什么是视图,什么是控制。是不是视图就不能包含代码和逻辑?肯定答案是否定的,因为就算用了StringTemplate,你还是需要给它填充数据,而给它填充数据的代码仍然是属于视图而不是控制或者有人干脆就当作了模型。那么既然这样,为什么我们就不能用aspx页面本身来作为模板呢?它可以判断,可以循环,可以分支,可以使用现成的控件。比如 <%
if(Helper.IsLogin()){
User u=Helper.GetLoginedUser();
%>
你的姓名是:<%=u.Name%>
<%}%>


我们把这种方法和StringTemplate的方法来比较一下。

aspx模板 StringTemplate
asp.net控件 支持  不支持
复杂显示逻辑 支持  支持(未经测试所有可能性)
编辑器支持 支持  不支持
编译检测 支持  不支持

[上一页]   [第1页]   [第2页]   [第3页]   [下一页]