gpt4 book ai didi

entity-framework - 使用 edmgen.exe 生成模型时如何排除 View ?

转载 作者:行者123 更新时间:2023-12-04 23:56:04 25 4
gpt4 key购买 nike

我正在使用 edmgen.exe 工具,如下所示:

"%windir%\Microsoft.NET\Framework\v4.0.30319\edmgen.exe" /mode:fullgeneration 
/c:"Data Source=%datasourceserver%; Initial Catalog=School; Integrated Security=SSPI"
/project:School /entitycontainer:SchoolEntities /namespace:SchoolModel /language:CSharp

上面的代码包括 ef 模型中的 View 。我不希望包含任何 View ,类似于下面的屏幕截图。如何才能做到这一点?
enter image description here

最佳答案

看起来没有办法使用 edmgen 来做到这一点。使用reflector,我发现edmgen使用System.Data.Entity.Design.dll完成它的工作,您可以像这样以编程方式排除数据库 View 和函数:

        var essg = new EntityStoreSchemaGenerator("System.Data.SqlClient", ConfigurationManager.ConnectionStrings["MST"].ConnectionString, "EFModel");
essg.GenerateForeignKeyProperties = true;
var filter1 = new EntityStoreSchemaFilterEntry(null, null, null, EntityStoreSchemaFilterObjectTypes.Table, EntityStoreSchemaFilterEffect.Allow);
var filter2 = new EntityStoreSchemaFilterEntry(null, null, null, EntityStoreSchemaFilterObjectTypes.View, EntityStoreSchemaFilterEffect.Exclude);
var filter3 = new EntityStoreSchemaFilterEntry(null, null, null, EntityStoreSchemaFilterObjectTypes.Function, EntityStoreSchemaFilterEffect.Exclude);
var filters = new EntityStoreSchemaFilterEntry[] { filter1, filter2, filter3 };
var errors1 = essg.GenerateStoreMetadata(filters);

关于entity-framework - 使用 edmgen.exe 生成模型时如何排除 View ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16489830/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com