Escaping ASP.NET Tags
If you're building ASP.NET code with CodeSmith Generator , you'll run into the problem that the <% tags that you want to output to your ASP.NET code are interpreted by CodeSmith Generator as CodeSmithtags instead. The solution is to escape the starting tags, replacing <% with <%%. This will be replaced with <% in the output, and not seen by CodeSmith Generator as an opening script tag.
Example
In this example we will escape the ASP.NET tags as shown in the following example:
<asp:FormView ID="FormView1" DataSourceID="SqlDataSource1" DataKeyNames="ProductID" RunAt="server">
<ItemTemplate>
<table>
<tr>
<td align="right"><b>Product ID:</b></td>
<td><%# Eval("ProductID") %></td>
</tr>
</table>
</ItemTemplate>
</asp:FormView>As stated above to escape the eval statement (<%# Eval("ProductID") %>) all you need to do is write it as follows:
<asp:FormView ID="FormView1" DataSourceID="SqlDataSource1" DataKeyNames="ProductID" RunAt="server">
<ItemTemplate>
<table>
<tr>
<td align="right"><b>Product ID:</b></td>
<td><%%# Eval("ProductID") %></td>
</tr>
</table>
</ItemTemplate>
</asp:FormView>