问题标签 [edmgen]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 类名中的非法字符
可能重复:
C# 类名中允许使用哪些字符?
我edmgen
用来从我的数据库动态创建类。但似乎表名中的某些字符被认为是非法的并被转换为_
(例如表名:test!@#$%^&*()[]
将被转换为test____________
.
_
生成对象层代码时转换为哪些非法字符?
visual-studio-2010 - 如何使用 Visual Studio 2010 和 EF 4.1 编写创建 .edmx 文件的脚本?
我正在使用 EF 4.1 开始一个新项目,首先是数据库。如果我使用 Visual Studio 生成 edmx,那么一切都很好;但是,当数据库发生更改而没有删除和重新添加它时,我似乎无法找到刷新 edmx 的方法。
在之前的项目中(使用 EF 3.x?),我们有执行此操作的脚本 - edmgen 来创建 csdl、msl 和 ssdl,然后edmgen2来创建 edmx 和 Designer.cs 文件。
我还需要使用 edmgen2 来创建 edmx 文件吗?或者 edmgen 的 VS2010 版本有没有办法做到这一点?
entity-framework - edmgen 验证的目的?比较 SSDL 和数据库模式?
不确定 EDMGEN在这里验证什么
它根据实时数据库模式验证 ssdl 文件以寻找不一致)?
Ot 它只验证 ssdl、csdl 和 msl 文件之间的内部一致性?
如果没有人手动更改自动生成的 ssdl、csdl 和 msl 文件的内容,是否有任何理由验证它们?
此验证是否与在 Visual Studio 中将 ConceptualEntityModel 的“Validate On Build”属性设置为 true 时运行的验证相同?
有什么方法可以检查 ssdl 文件和实时数据库之间的一致性吗?(如新表、不同字段、外键等......)与 Redgate SQLCompare 在比较模式时提供的结果相似......
entity-framework - 默认目标实体框架版本需要 edmx 架构版本 2.0.0.0 或更低版本。指定的架构是版本 3.0.0.0
我正在使用 EdmGen.exe 在 Entity Framework 5.0 中预先生成视图,如下所示:
警告细节:
警告 3 默认目标实体框架版本需要 edmx 架构版本 2.0.0.0 或更低版本。指定的架构是版本 3.0.0.0。为避免此警告,请明确指定目标实体框架版本。您可以通过使用带有 targetVersion 选项的 EdmGen.exe 命令行工具来执行此操作,或者在调用 GenerateCode 方法时包含 targetEntityFrameworkVersion 参数。
知道如何解决这个问题吗?
performance - POCO 实体生成器或 edmgen entityclassgeneration:性能问题
我正在从事一个项目,其中性能是成功的关键因素。我需要决定是否使用 POCO 实体生成器。我可能会使用 entityclassgeneration 而不是 POCO,但我不确定性能是否会受到影响。
我应该考虑的另一件事是必须使用存储过程。我不确定在开发阶段后期使用 POCO 实体生成器模板是否会给我带来一些问题。特别是存储过程。
任何建议都会对使用 POCO 实体生成器或实体类生成有所帮助。顺便说一句,我使用的是 Entity Framework 5.0 和 MySQL 数据库。
entity-framework - 使用 edmgen.exe 生成模型时如何排除视图?
我正在使用这样的 edmgen.exe 工具:
上面的代码包括 ef 模型中的视图。我不希望包含任何视图,类似于下面的屏幕截图。如何才能做到这一点?
entity-framework - Entity Framework 和 PostgreSQL:调用存储过程时出现异常
我正在尝试使用 Microsoft 实体框架连接我的 PostgreSQL 数据库。
由于 npgsql 数据库提供程序没有集成到 Visual Studio 中,我使用 EdmGen 工具从我现有的数据库中生成接口代码。
该数据库还包括一个用于测试目的的存储过程:它不接受参数并返回 void。EdmGen 不会为此存储过程生成任何代码 - 但它包含在生成的 ssdl 文件中。所以我写了一个小工具来修改 csdl 和 msl 文件以包含这个过程。这是三个文件的简化视图:
ssdl:
csdl:
msl:
EdmGen 生成的代码如下所示:
我使用以下代码调用此函数:
但我得到以下异常:
[System.Data.EntityCommandCompilationException]
准备命令定义时出错。有关详细信息,请参阅内部异常。
内部异常是:
[System.ArgumentException]
值不在预期范围内。
我不知道这个异常是从哪里来的,因为没有值可以传入或传出存储过程。也许你们可以帮助我。
可能也很重要的几点:
这是我的连接字符串
/li>app.config
:我正在使用以下软件版本:
- Visual Studio Express for Desktop 2012
- npgsql 2.0.11.0
我对 Entity Framework 和 ADO.NET 完全陌生,对 C#、.NET 和 Visual Studio 也很陌生。所以我可能误解了一些概念。
visual-studio - “更新模型”向导不适用于 Npgsql 和 Visual Studio 2013 EntityFramework
目前我们使用 Visual Studio 2012、EF 5.0 和 Npgsql 2.0.12.0。
我想升级到 Visual Studio 2013 和 Npgsql 2.0.14.3(我现在可以使用 EF 5.0)。
目前我们使用“更新模型”向导,该向导接受模式中的任何更改并将它们提供给在 VS 设计器中查看的 edmx 文件。我们通过在 Npgsql.Provider2 中使用 DDEX 并启动“实验性”Visual Studio 实例的尴尬过程来做到这一点。
但这在 Visual Studio 2013 中不再有效(更新生成的注册表项后)。如果我在 machine.config 中将他的 DbProvider 更改为 Npgsql 2.0.14.3,它也不起作用。
如果有人能告诉我他们是否让这个工作以及如何工作,那就太棒了。
作为临时替代方案,我正在考虑使用 edmgen.exe 从架构中更新 edmx 文件。到目前为止,我已经能够生成 .csdl、.ssdl 和 .mdl 文件,但是我找不到将它们全部打包成 .edmx 文件的方法。有没有人尝试过这种方法?
c# - 是否可以在运行时添加/修改 EntityFramework 对象?
这是问题所在:我的数据库管理员希望能够在不需要重新安装应用程序的情况下添加/删除数据库对象,但我希望能够使用实体框架提供的丰富数据来处理从存储过程返回的数据类型。
是否有任何可能的方法在运行时从实体框架中重建、添加或删除实体?例如,如果 dbcontext 包含在隔离的 AppDomain 中,是否可以重新加载 AppDomain(例如在运行时运行 EdmGen.exe 之后)以添加新的实体类型?如果没有,有什么方法可以在运行时将数据上下文换成另一个?
c# - EF6 不使用预先生成的视图
我已经使用以下指令预先生成了视图:http: //msdn.microsoft.com/en-us/library/vstudio/bb896240 (v=vs.100).aspx
并且在我的项目中已经有了Model.Views.cs
我的上下文和所有实体的文件.
问题是这些视图没有在运行时使用。ViewsForBaseEntitySets2F2...
类永远不会被初始化,性能仍然很差。
如何强制 EF 使用预先生成的视图?
如果它必须默认使用它(在组装时寻找EntityViewGenerationAttribute
),那么我做错了什么以及如何诊断?
UPD
我刚刚发现System.Data.Entity.Infrastructure.MappingViews
了令人困惑的命名空间。
此外,还有几个未回答的问题: