民间,
我想创建一些T4模板,用于从数据库生成类文件(每个表约7个),以支持我们的内部ORM(不要问 - 长篇故事和历史原因.....)< / p>
我真正喜欢做的是在我的主TT模板上有一个属性,可以直观地选择要为其创建文件的服务器,数据库和表(类似于CodeSmith中的表选择器)。
因为这似乎不存在(或者它?),我认为接下来最好的事情是使用三个字符串属性作为服务器,数据库,表名,并使用SMO连接到该表并获取列数据I需要。
我试图跟随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();
#>
我尝试将<#= serverName #>
放在Server()构造函数的括号内 - 但这不起作用:-(好像我有点卡在这里......有什么意义如果我无法评估和使用他们的价值,那就有了属性!: - )
任何接受者?
马克
答案 0 :(得分:2)
这个怎么样?
<#
Server server = new Server(serverName);
Database database = new Database(server, databaseName);
Table table = new Table(database, tableName);
table.Refresh();
#>