|
什么是模板引擎?说白了就是能够自动替换占位符的替换引擎。原理上也就是两个步骤,找到-》替换。但是替换不是简单的替换,包括:
简单变量替换(); 复杂变量替换(); 对象变量替换(); 键值类型替换(); 自定义集合替换(); 同时显示多个变量(); 模板调用(); 给调用模板传参数(); 值模板(); 简单循环(); 交差循环显示(); 通过模板交差循环(); 条件判断(); 从文件中创建模板();
常用的模板引擎,StringTemplate和velocity差不多都是按照这种模式来设计的。但是这样子真的就是我们需要的吗?我们拿一段典型的StringTemplate的模板代码来看看:
首先是在模板文件中:
姓名:$User.Name$ 年龄:$User.Value$
然后是在代码里: User us = new User(); us.Name = "xxsssx"; us.Value ="80"; StringTemplate st = new StringTemplate("$User.Name$,$User.Value$"); st.SetAttribute("User", us); Console.WriteLine(st.ToString());
|