伙计们,
我想创建一些 T4 模板,用于从数据库生成类文件(每个表大约 7 个)以支持我们的内部 ORM(不要问 - 长篇故事和历史原因.....)
我真正想做的是在我的主 TT 模板上有一个属性,可以直观地选择要为其创建文件的服务器、数据库和表(类似于 CodeSmith 中的表选择器)。
由于这似乎不存在(或者确实存在?),我认为下一个最好的方法是使用三个字符串属性作为服务器、数据库、表名,并使用 SMO 连接到该表并获取我需要的列数据。
我尝试遵循 Oleg Sych 的示例,并提出:
<#@ property name="serverName" processor="PropertyProcessor" type="System.String" #>
<#@ property name="databaseName" processor="PropertyProcessor" type="System.String" #>
<#@ property name="tableName" processor="PropertyProcessor" type="System.String" #>
但是如何在我的代码块中引用这些属性,这些属性连接到使用 SMO 指定的服务器来检索数据?
<#
Server server = new Server();
Database database = new Database(server, "DASECO_DEV");
Table table = new Table(database, "T_User");
table.Refresh();
#>
我尝试将 a<#= serverName #>
放在 Server() 构造函数的括号内 - 但这不起作用:-( 好像我有点卡在这里......如果我无法评估,那么拥有属性有什么意义并使用他们的价值观!:-)
有接盘侠吗??
马克