首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在使用edmgen.exe生成模型时排除视图?

如何在使用edmgen.exe生成模型时排除视图?
EN

Stack Overflow用户
提问于 2013-05-11 03:50:40
回答 1查看 526关注 0票数 4

我使用的edmgen.exe工具如下所示:

代码语言:javascript
复制
"%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模型中的视图。我不希望包含任何视图,类似于下面的屏幕截图。如何做到这一点?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-05-16 01:58:52

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

代码语言:javascript
复制
        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);
票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16489830

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档