代码改变世界

CodeSmith基础(五)

2005-12-21 13:35  努力学习的小熊  阅读(12230)  评论(3编辑  收藏  举报

       本篇将介绍CodeSmith的模版中的语法。
代码标签
       <% %>
标签
       可以放置任意数量的代码在其中,但并不能直接输出到模版中。

<% foreach (ColumnSchema column in SourceTable.Columns) { %>
<%= column.Name %>
<% } %>

<%= %>标签

在模版中输出一个字符串。上例中的<%=column.Name%>

脚本标签

在这个标签中可以包含一段代码,但是他不直接影响输出的模版。可以放置一些比较有帮助的方法在其中,然后在模版的各个地方可以调用它。在脚本标签中必须包含这个参数runat=”template”,否则他会被处理成普通文本。

例:

 1 <script runat="template">
 2 private string GetColumnName(ColumnSchema cs)
 3 {
 4       return cs.Name;
 5 }
 6 </script>
 7 
 8 <% foreach (ColumnSchema cs in SourceTable.Columns) { %>
 9 <%= GetColumnName(cs) %>
10 <% } %>

使用标签可以大量减少代码,并使模版更加的易读和一管理。

Include标签

ASP.NET一样,可以在模版中包含一些文本文件,但同ASP.NET一样它也不是总能达到你的目标。

例:

<!-- #include file="myfile.inc" -->

有时在多个模版中引用一个组件中的功能,调用其中的方法,这时我们引用组件。但有些情况下,适用Include标签可以得到更好的效果。

Comment标签

注释标签,在前边已经做过介绍。

例:

<%-- This is a comment --%>