网鸟Asp.Net模板引擎 Version 2.2.1016.35 可以直接将html格式的模板代码转换为.aspx格式文件,大大的提高了执行效率,它的主要功能列举如下,更多的特性还有待您在实践的过程中挖掘。
网鸟Asp.Net模板引擎 Version 2.2.1016.35 采用了<prefix:foreach>形式的标记语言作为模板语句,相对于其他形式来说,这可以在一些开发工具(如Dreamweav)中实现代码高亮和代码提示,代码可读性也更加友好,最终生成的.aspx文件中的代码格式也很清秀,具有很强的可读性,便于开发者的管理和维护。
网鸟Asp.Net模板引擎 Version 2.2.1016.35 内置支持的模板流程控制语句如下,除了注释语句和单行语句之外,其他语句都允许嵌套。
| 名称 | 示例 | 备注 |
|---|---|---|
| include | <!--#include file="_Page_Header.shtml" --> | 实现SSI机制,用于导入要包含的文件,语法同shtml规范一致。 |
| break | <mte:break /> | 实现C#中的break语句 |
| continue | <mte:continue /> | 实现C#中的continue语句 |
| do...while | <mte:do> //... </mte:do while="true"> |
实现C#中的do...while语句 |
| foreach | <mte:foreach expression="char c in name"> //... </mte:foreach> |
实现C#中的foreach语句 |
| for | <mte:for expression="int i = 0; i < 10; i++"> //... </mte:for> |
实现C#中的for语句 |
| goto | <mte:continue label="label1" /> <mte:continue case="1" /> |
实现C#中的goto label语句 实现C#中在switch中使用的 goto case语句 |
| if-elseif-else | <mte:if expression="x == 1"> //... <mte:elseif expression="x == 2" /> //... <mte:else /> //... </mte:if> |
实现C#中的if语句 |
| lock | <mte:lock expression="_ObjectAsync"> //... </mte:lock> |
实现C#中的lock语句 |
| return | <mte:return /> <mte:return expression="1" /> |
实现C#中的不带返回值的return语句 实现C#中的带返回值的return语句 |
| switch | <mte:switch expression="i"> <mte:case expression="1"> //... <mte:break /> </mte:case> <mte:case expression="2"> <mte:continue case="1" /> </mte:case> <mte:default> //... <mte:break /> </mte:default> </mte:switch> |
实现C#中的switch语句 |
| throw | <mte:throw expression="e.Error" /> |
实现C#中的throw语句 |
| try | <mte:try> //... </mte:try> <mte:catch expression="Exception ex"> //... </mte:catch> <mte:finally> //... </mte:finally> |
实现C#中的try语句,其中catch子句中的 expression属性是可省略的。 |
| using | <mte:using expression="_FileStream"> //... </mte:using> |
实现C#中的using语句 |
| var | <mte:var expression="int index = 0;" /> |
这是一个单句万能标记,可以在expression中 写任何合法的C#代码 |
| while | <mte:while expression="true"> //... </mte:while> |
实现C#中的while语句 |
| comment | <mte:comment> //... </mte:comment> |
实现C#中的注释功能,其包含的所有子内容都将被注释掉, 此标记不允许嵌套使用,如嵌套使用会生成不正确的代码, 在运行时会出现编译错误。 |
| important | <mte:important priority="1"> <mte:var expression="int index = 0;" /> </mte:important> |
该语句能够将其所包含的代码提前到html标记开始 输出之前执行,在一些场合非常有用。通常important语句 内部包含的都是如上列出的模板语句,如果直接包含html标 记的话可能会导致页面显示不正常 其属性priority只能填写数字(int型),它表示语句的优先权, 数字越小优先级越高 |
| import | <mte:import namespace="System.Net" /> | 该语句是用来动态导入命名空间的,模板引擎会自动排除重 复的命名空间,并将它们附加到代码顶端 |
| newline | <mte:newline /> | 该语句用来在生成的.aspx文件中插入一个空行,对页面输出 无任何影响。 |
| setting | <mte:setting name="MaxNestting" value="20" /> | 配置型标记。可以在模板代码中向模板引擎提供程序提供配置信息。 |
| addstaticvar | <mte:addstaticvar name="" value="" /> | 配置型标记。可以在模板代码中向模板引擎提供程序添加静态变量。 |
| ignore | <mte:ignore /> <mte:ignore value="true" /> <mte:ignore value="false" /> |
该语句用于忽略所标记的模板的处理。 模板引擎检测到包含此标记的模板时将直接跳过且不进行任何处理。 |
| setlang setlanguagecode |
<mte:setlang value="ZH-CN" /> <mte:setlanguagecode value="ZH-CN" /> |
多语言引擎标记。 该语句用来即时切换语种。 |
| 备注 | 配置型标记从严格意义上讲不是模板语句。 | |
网鸟Asp.Net模板引擎 Version 2.2.1016.35 的一些兼容性问题的解决: