问题标签 [ef-model-first]
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.
linq - Linq 处理异常
我创建了一个项目,我将 EF 与 LINQ 和Model first
. 因此,基于我的 edmx,我创建了我的数据库以及我的课程。
所以我遇到了一些问题。我创建了一个 Click 来测试我的代码是否正常工作。
因此,在我的ZUser
班级(Controller)中,我执行了以下代码:
还有我的模型(由我的 edmx 生成的类)
问题
- 如果我不让
[Table]
我的模型类(我添加了那个)我得到了这个错误。我不确定这是否是纠正它的正确方法。
类型“{0}”未映射为表。
- 从上面“解决”问题后。我在我的
foreach (ZUser usr in query)
.
成员“{0}.{1}”不支持 SQL 转换。
我不知道如何修复或创建解决方法。
entity-framework-5 - 将自定义 t4 模板添加到 DDL 生成模板下拉列表
我知道我可以在文件夹中添加模板
C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\Extensions\Microsoft\Entity Framework Tools\DBGen
使其在 DDL 生成模板下拉列表中可见,但是我需要将模板分发给我的团队成员,以便他们可以将模板添加到同一文件夹中。
我希望通过以某种方式将模板添加到 VS 2012 解决方案并使其在同一个下拉列表中可见,我可以达到相同的结果
你知道实现这一目标的方法吗?我正在使用 VS 2012 并使用 Model First 方法生成数据库
asp.net-mvc - 学习与 MVC 一起使用的实体框架,首先采用哪种方法?
我是 MVC 和 EF 的初学者。为了更好地使用这些技术,我决定更清楚地理解事物。
现在,我已经开始阅读有关 EF 的内容,并且知道有Model-first
,Database-first
和Code-first
技术。
我真的想从对我最有利的一个开始,因为我将使用 MVC 进行开发,然后再回到其他两个并比较它们。
我唯一的问题是,我应该从哪种技术开始并使用?
entity-framework - 实体框架使用默认表值生成数据库架构 (SQL)
我正在使用 EF 5 和 SQL Server 2005,Model First(有点)。
顺便说一下,我的意思是我通常在 SQL Server 设计器中构建我的架构,但将架构导入 EF,这样我就有了一个可视化视图。经常有往返。
但是,我注意到,当我尝试基于 EF 模型生成 DB 模式时,它会跳过我作为默认值分配给我的 Guid ID 的所有 NEWID() 默认值,但它不会跳过身份字段int 类型。
我发现这篇文章解释了这个原因: Entity Framework 4 and Default Values
但是,它没有回答我的问题:如何让 Entity Framework 为我的 uniqueidentifier 类型生成默认值为 NEWID() 的 SQL DDL 数据库模式?
笔记:
我不关心如何从 POCO 实体等中设置它们(有很多帖子对此进行了描述)——我关心的是正确生成 SQL DDL,这样我就可以为数据库播种而不必担心这些值会丢失。
entity-framework - 实体框架模型优先和代码优先 TPH 问题
通过尝试先制作模型或先使用 TPH 概念编写代码,我面临两个问题。
问题是我需要在三个级别上使用每个层次结构的表,以便:
当我使用 Model First 时,最后一个层次结构实体(第三级)不会保存在数据库中。我从该实体创建一个实例,该实例继承了一个抽象实体,该抽象实体继承了另一个抽象实体。保存了两个抽象实体的数据,但不保存最后一个实体。如果继承最多两个级别可以正常工作。
如果我尝试使用 Code First,问题是我不能共享具有相同名称的属性,例如:ClassB 和 ClassC 有一个名为“Name”的属性,并且都继承了 ClassA。当我映射生成数据库时,我只想创建一个名为 ClassA 的 sql 表,但它不共享“Name”列,它创建 Name 和 Name1 列。
我需要做这个模型之一,否则我不能在我的模型中使用继承。
希望有所帮助!
谢谢
mysql - Visual Studio 2010 中的实体框架 5 和 MySql - 模型优先问题
我使用 MySql 数据库在 Visual Studio 2010、.NET 4.0 中开发了应用程序。
我已经安装了 Entity Framework 5.0 和 EF 5.x DbContext Generator for VB(使用 NuGet),然后是 MySql Connector 6.5.5。我使用的是 Model First 方法,所以我创建了两个表,然后我选择了“Generate database from model..”选项。设置连接提供程序和连接参数(成功测试连接到数据库)后,我单击“完成”,生成 *.sql 文件,但在我的数据库中没有创建任何内容。更糟糕的是,生成的 SQL 脚本是 SQL Server Flavor 并且它有一个标题:
如何使用 Mysql 和 MySql Connector 强制执行 EF 以自动创建数据库表,并生成 MySql 脚本,没有 SQL Server 脚本?
最好的问候, WP
vb.net - 协会奇怪的行为
我在 Model First 方法中发现了关于在 .NET 4.0 下运行的 EF5 的以下问题:我有以下自动生成的实体:
通知实体与订单实体和员工实体通过1(订单,员工)对多(通知)的关系关联。
之后,Order 实体也与 Employee 实体有关联:many (Order) to 1 (Employee) 关系。
然后,我预计以下单元测试会失败,因为通知实体与员工实体违规的关系(我没有分配 notice1.employee 导航属性):
但在结果测试中通过了。在数据库中,Notice->employee_id 值等于 Order->employee_id 值,这是意料之外的,因为这些外键可能指向不同的 Employee 对象。DbUpdateException
我希望我必须自己设置 notice1.employee 导航属性,如果我忘记这样做,我想获得例外。
这种奇怪的 EF5 行为的原因是什么?
更新:
CreateNewNotice()
和CreateNewOrderWithAllRequiredAndRelatedEntities()
实施:
c# - 如何更改导航属性返回类型
我阅读了以下有关 EF5 Databinding with WinForms的文章。
我使用 VS2010、.NET 4.0 和 EF5 Model First 方法,我不知道如何在 VS2010 EF 设计器中更改导航属性返回类型,而不更改自动生成的实体类。例如,我需要将导航属性返回类型从 更改ICollection<T>
为ObservableCollection<T>
,但在属性视图中禁用了“返回类型”选项。
oracle11g - EntityFramework 4.1 Code First Oracle 插入 PL/SQL 代码
我的项目有两个 EF 4.1 上下文,一个是模型优先,另一个是代码优先。这两个上下文都扩展了 DbContext 并连接到 Oracle 数据库。
在对大表(5M 记录)执行更新时,模型优先上下文会按预期生成 SQL,并且运行速度很快(毫秒):
在对大表(4.7M 记录)执行更新时,代码优先上下文会产生一些奇怪的 PL/SQL:
此更新语句需要 3 秒才能完成。
这是代码优先上下文的代码优先 EntityTypeConfiguration:
有没有我可以设置的配置来强制 EF 生成简单的更新语句而不是疯狂的 PL/SQL?
entity-framework - 如何处理继承表上的级联删除?
在使用继承表时,我遇到了 ON DELETE CASCADE 的问题。
我有以下表格(模型优先)
现在,如果我想删除 Entity1 中的一个条目。
简单...但是 SaveChanges 引发以下异常。
DELETE 语句与 REFERENCE 约束 FK_EntityA_inherits_BaseEntity 冲突。冲突发生在数据库“MyDB”、表“dbo.BaseEntitySet_EntityA”、列“Id”中。语句已终止。
我该如何解决?
更新
我注意到 VS2010 和 VS2012 模型设计器输出 SQL 的方式有所不同。
VS2010:
删除通知不采取行动
VS2012
关于删除级联的通知
那是相当有意义的...