0

我正在尝试使用 LinqToDB 模板构建现有数据库。数据库中的所有表都有一个前缀“tbl”,即“tblPerson”。我想从我的类型名称中去掉这个(和其他前缀)。我尝试修改 LinqToDB.Templates 目录中的 DataModel.ttinclude 文件,但似乎没有任何影响。

TypeName = t.TypeName.StartsWith("Tbl") ? t.TypeName.Replace("Tbl","") : t.TypeName,

显然我错过了一些简单的东西。

4

1 回答 1

0

感谢 DLuk 的链接,我能够使用 DB.tt 文件中的以下代码修改表。

foreach (var t in Tables.Values)
{
    t.TypeName = t.TypeName.StartsWith("Tbl") ? t.TypeName.Replace("Tbl","") : t.TypeName;
    t.DataContextPropertyName = t.TypeName;
    foreach(var k in t.ForeignKeys.Values)
    {
        k.MemberName = k.MemberName.StartsWith("Tbl") ? k.MemberName.Replace("Tbl","") : k.MemberName;
    }
}
GenerateModel();
于 2020-05-15T17:17:07.283 回答