3

我正在使用 Entity Framework 电动工具对现有数据库中的代码进行逆向工程。我的数据库中有多个模式,但我只想为 dbo 模式生成类。我如何自定义它

4

2 回答 2

4

您必须编辑逆向工程师模板。我为 Entity Framework 6 做了以下工作。

在 Context.tt 上,架构当前不可用,因此必须手动删除不需要的代码。

在 Entity.tt 和 Mapping.tt 上,您必须在此处更改代码。

var efHost = (EfTextTemplateHost)Host;
var code = new CodeGenerationTools(this);

var efHost = (EfTextTemplateHost)Host;
if((string)efHost.TableSet.MetadataProperties["Schema"].Value == "dbo"){
var code = new CodeGenerationTools(this);

然后在这两个文件的末尾放置一个右括号。

<#
}
#>

将“dbo”更改为您想要的任何内容。

于 2013-10-17T22:21:37.920 回答
1

您可以使用 T4 模板(在 Entity Framework 菜单 > Customize Reverse Engenieer Templates 上)。在您可以测试架构的那些上: if (efHost.TableSet.MetadataProperties["Schema"].Value == "Correct Schema") // 生成

于 2013-07-03T14:37:57.557 回答