SubSonic很棒,可以帮助我更快地编写代码,但现在我遇到了一些我认为可以帮助大量程序员的东西。
我在一个巨大的数据库上编程,但只需要大约50个表中的6到7个表。Settings.ttinclude中的排除要求我输入其他不需要的表。我希望有一个IncludeTables字符串数组来加速应用程序所需的表的输入。
希望SubSonic项目的团队已经有了这个问题的补丁/修复。
编辑后,我看到v2.2有includeTableList和其他配置选项的完整列表。在v3.0.0.2中,我在哪里设置这些?
发布于 2009-07-19 06:16:02
拥有T4模板的目的是让你可以自己做-而不是让我们来修复它(老实说,我们并不介意-但这对你来说更容易)。在这种情况下,大多数人只有几个表要排除。
也就是说,在下一个版本中,我将使该方法更加通用,以便您可以根据需要更改它(而不是检查数组-我应该问"ShouldGenerate()")。
发布于 2009-07-16 15:11:16
我不是SubSonic专家,但如果您使用的是ActiveRecord t4模板,您可以只编辑模板本身。
在SQLServer.ttinclude中查找:
const string TABLE_SQL=@"SELECT *
FROM INFORMATION_SCHEMA.TABLES";只需在上面添加一个WHERE子句,以便只包含您想要的表。
发布于 2009-07-16 15:49:19
Sestocker -谢谢你...我相信这是可行的,但我有我想要的解决方案:
在Settings.ttinclude中,在ExcludeTables变量下面有一个IncludeTables变量:
string[] ExcludeTables = new string[]{
....
};
string[] IncludeTables = new string[]{
....
};然后我更新了ActiveRecord.tt和Context.tt,更改了检查ExcludeTables的代码:
if(!ExludeTables.Contains(tbl.Name))
....到这个
if(IncludeTables.Contains(tbl.Name))
....因此,我确保所有对"!ExcludeTables“的引用都更改为"IncludeTables”。
它生成了我需要的类,但我还没有测试它。
我会看看我是否可以在t4模板上工作一点,让代码同时使用Exclude和Include,并看看我是否可以在今天晚些时候或明天在网上发布它。
https://stackoverflow.com/questions/1137888
复制相似问题