本篇将介绍CodeSmith的模版中的语法。
代码标签
<% %>标签
可以放置任意数量的代码在其中,但并不能直接输出到模版中。
代码标签
<% %>标签
可以放置任意数量的代码在其中,但并不能直接输出到模版中。
<% foreach (ColumnSchema column in SourceTable.Columns) { %>
<%= column.Name %>
<% } %>
<%= 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 <% } %>
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 --%>