【发布时间】:2008-10-15 10:53:03
【问题描述】:
我开始研究 T4 的代码生成。
我知道您有一个基本模板,您可以在其中嵌入小块 c#/vb,它可以执行巧妙的操作...
<#@ template language="VB" debug="True" hostspecific="True" #>
<#@ output extension=".vb" debug="True" hostspecific="True" #>
Imports System
<#For Each Table as String in New String(0 {"Table1","Table2"}#>
Public Class <#=Table#>DA
Public Sub New
<#= WriteConstructorBody() #>
End Sub
End Class
<#Next#>
<#+
Public Function WriteConstructorBody() as String
return "' Some comment"
End function
#>
这很棒..但是我希望能够编写我的主要块......
<#@ template language="VB" debug="True" hostspecific="True" #>
<#@ output extension=".vb" debug="True" hostspecific="True" #>
Imports System
<#
For Each BaseTableName as String in New String(){"Table1","Table2"}
WriteRecDataInterface(BaseTableName)
WriteRecDataClass(BaseTableName)
WriteDAInterface(BaseTableName)
WriteDAClass(BaseTableName)
Next
#>
然后我希望能够让 WriteX 方法存在于类块中,但它们本身可以通过示例代码写入,即转义代码块。
我怎样才能做到这一点?
【问题讨论】:
标签: t4