SubSonic 3.0.0.3 C#我们应该如何处理保留字?

时间:2009-07-31 18:52:52

标签: subsonic subsonic3

我有一个遗留数据库,其列名如“void”。我还有几个Microsoft SSIS日志数据库。那些列名称如“event”和“operator”。看起来我们需要在Settings.ttinclude模板中尽早在列上设置CleanName,但我不太确定解决此问题的最佳方法,因为保留字列表可能会变长。这应该是一个单独的包含?我很乐意做出贡献,但我想首先从聪明人那里得到一些设计意见。

1 个答案:

答案 0 :(得分:4)

c#中的保留字可以通过在前面加上'@'符号来处理。例如,

public void Test(int if)
{
}

因编译错误而失败,但

public void Test(int @if)
{
   var something = @if;
}

很好。这也适用于属性名称。您可以升级T4模板以检查保留字列表,如果匹配,则在名称前添加“@”符号。

至于将其添加到Subsonic的最佳方式,我必须做更多的挖掘。