【问题标题】:How to retrieve the table name with SubSonic 3?如何使用 SubSonic 3 检索表名?
【发布时间】:2011-05-03 14:00:32
【问题描述】:

很好的 SubSonic 2 我能够检索到我正在查询的表的名称:

.Schema.TableName

现在我切换到 SubSonic 3,我找不到任何方法来实现相同的目标。

我倾向于避免在 che 源代码中硬编码表的名称,所以如果我更改它,编译器会抛出异常。

(注意:是的,我对大多数查询都使用了新的“类似linq”的语法,但我处理的是一个复杂的语法,我认为遵循旧的方式更好)。

【问题讨论】:

  • 外面有人吗? :)
  • 无论如何..我已经更改了.tt文件并放入结构代码以生成表名。

标签: subsonic3


【解决方案1】:

将以下内容放入 structs.tt 中,您就可以为 Tables 类准备好表格。您可以像 subsonic 2.0 那样使用它,即 Table.TableName。

 public class Tables
       {
           <#  foreach(var tbl in tables){
            if(!ExcludeTables.Contains(tbl.Name))
            {
            #>
                public static string <#=tbl.CleanName#> = "<#=tbl.Name#>";
            <#
            }
            }
            #>
       }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多