问题标签 [ef-database-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.

0 投票
1 回答
2742 浏览

entity-framework - EF 数据库第一个多对多附加字段

现在这可能是一个愚蠢的问题,但它让我很头疼。

我想要完成的是让 EF 生成 2 个具有 MM 关系的对象。 MaterialProduct。一个产品有很多材料,一种材料可以在多个产品中找到。诀窍是可以测量材料,例如,kg我需要知道一种材料在它所在的产品中能容纳多少公斤。注意:材料可以没有产品而存在,产品不能没有材料而存在。

这是我想出的最初设计,但显然行不通。

所以我的问题是,如何正确添加该QuantityOfMaterialInProduct字段,因为没有它 DBContext 工具会正确生成所有内容。

0 投票
2 回答
286 浏览

c# - 将 EF 与不是 1:1 的现有数据库和域/对象模型一起使用

首先:我是 EF 新手,这只是为了测试 EF 的功能,看看它如何适应已经根据数据库表和对象模型设置的环境 - 以及当这两个模型不要在类名/表名和属性名/列名上,甚至表和类的数量上进行1:1的映射。如果您想回复:“EF 不应该以这种方式使用”,请记住“测试功能”。谢谢!:)

考虑以下场景。

我有三个数据库表:

我想映射到两个类:

ServiceMessage 对象由 Message 表中的一行(以messageId作为键)和 MessageText 表中的一行(以messageIdlanguageCode作为键)组成。

ServiceMessageInstance 更简单:它具有对 ServiceMessage 对象的引用和一些附加属性。

我在 EF 上玩了一些,并进行了很多谷歌搜索,但我还没有找到我的问题的答案:我怎样才能用 EF 做到这一点?我应该采取哪种方法?我可以用 EDMX 设计器做到这一点吗?DbContext.OnModelCreating?

我意识到这可能有点过于“宽泛”的问题,但我会很感激任何指针!

谢谢。

BR,爱马仕

0 投票
1 回答
4351 浏览

entity-framework - 将 Code First 和 Database First 实体框架与 Devart 一起使用

我有一个使用 EF 4.4(EF 5.0 的 .NET 4.0 版本)的网站,它针对现有数据库使用 Code First。我使用 Devart oracle 数据提供程序,由于模型类型的大小写问题,它需要一种解决方法。

它使 Devart 提供程序识别小写数据类型来解释架构。(或类似的规定)

这可以正常工作,直到该网站内的控件(基于 EF 4.1 Database First(也针对现有数据库)构建)尝试加载。Devart 提供程序似乎在网站上共享,它导致提供程序无法(正确)识别所有大写的数据类型的错误,因为以前的解决方法使其在 Code First 中工作。

是否有解决方法,或者我必须将 Database First 方法转换为 Code First?

编辑:这是相关的解决方法代码。我似乎丢失了从中获得它的论坛帖子。我相信它在 Devart 论坛上:

相关的错误是这样的:

还有很多,但它们都是相同的错误,具有不同的行和数据类型。

0 投票
2 回答
16668 浏览

asp.net-mvc-4 - 将 MVC 4 SimpleMembership 与现有的数据库优先 EF 模型一起使用

我第一次尝试在我的 MVC 4 中使用 SimpleMembership,我已经有一个现有的数据库和基于它创建的 EF5 模型!我搜索了很多,但我找不到如何在我的情况下使用它,也找不到在我自己的模型下的所有东西。

如果有人能给我一个如何做到这一点的想法,那就太好了。

谢谢

0 投票
2 回答
228 浏览

asp.net-mvc - 学习与 MVC 一起使用的实体框架,首先采用哪种方法?

我是 MVC 和 EF 的初学者。为了更好地使用这些技术,我决定更清楚地理解事物。

现在,我已经开始阅读有关 EF 的内容,并且知道有Model-first,Database-firstCode-first技术。

我真的想从对我最有利的一个开始,因为我将使用 MVC 进行开发,然后再回到其他两个并比较它们。

我唯一的问题是,我应该从哪种技术开始并使用?

0 投票
1 回答
1115 浏览

asp.net-mvc-4 - 如何使用带有复合主键的 ASP.NET MVC4 / EF5 脚手架?

我使用 Visual Studio 2012 (Web Express) 并且我正在创建一个简单的 ASP.NET MVC 应用程序,(使用 Database-First 方法)按照hector espinosa 的这个很好的指南。我的问题是,对于使用复合主键的表,脚手架系统无法正常工作。

我的表如下:

脚手架生成控制器和视图,但只要我单击编辑或详细信息链接,唯一使用的标识符就是第一个 ( UnitOid) 值。

控制器中的示例操作:

异常消息非常清楚:

“传递的主键值的数量必须与实体上定义的主键值的数量相匹配”

MVC4 / EF5 / VisualStudio 2012 的脚手架系统真的不能开箱即用吗?

注意:这个问题与这个问题非常相似。但是,我正在重新询问工具的当前版本。

0 投票
0 回答
996 浏览

c# - 实体框架添加到 ICollection

我有一个用户类

和成就班

这两个类之间存在多对多关系,因为一个用户可以拥有 1 个或多个成就,而一个成就可以存在于 1 个或多个用户。我创建了以下方法来将成就分配给用户。

当我调用此方法时,我得到以下异常。

我应该如何将成就分配给用户?

0 投票
1 回答
508 浏览

entity-framework - EF5 和 Code First 的延迟加载问题

似乎延迟加载与代码优先的工作方式不同,因为它与 db-first 的工作方式不同:

考虑:

和:

在这个 DbContext 中:

当我在我的代码中尝试这样做时,它不起作用:

代码优先模型的能力是否不如 db 优先模型?我会为它分配 nav 属性和 pkey 似乎很奇怪,这让我觉得我的配置有误。

以下应该工作吗?

会很好,因为 x 也知道它附加了哪个上下文,我原以为它可以处理这种情况。

谢谢。

0 投票
3 回答
15404 浏览

asp.net-mvc - 如何更改 EF 生成的类属性的 [DisplayName]?

.edmx我们知道 EF 根据我们添加到文件的表生成类。这不会为他们提供任何 [DisplayName] DataAnnotations。

如何在不修改它们的情况下添加生成的类的 [DisplayName]?.edmx因为如果数据库更改,如果我修改文件(重新添加修改后的表),则可以覆盖生成的类。所以我不想修改生成类本身。

EF 生成类

看法

0 投票
2 回答
340 浏览

c# - 不能有所需的类 - 具有实体框架的表结构

这是我的问题的简化版本。考虑一个调查应用程序:

  • 有问题,
  • 一个问题有很多选项,一个选项只能属于一个问题
  • 一个问题应该有一个类别,一个类别可以属于多个问题
  • 一个问题可能有很多标签,一个标签可以属于很多问题

此外,我想定义一个问题和其他问题的选项之间的依赖关系,例如,如果用户对“你有车吗?”投了“否”选项。问题,他/她不会被问到“你的车是什么牌子的?”。

由 Code First 创建的自动生成的数据库模式和由数据库首先创建的自动生成的代码都不令人满意。下面是为这两种方法生成的代码和数据库模式。

EF 可以按预期处理 Question - Tag 关系,但它无法处理 Question 和 Option 之间的依赖关系(据我所知),因为 Question 已经有自己的选项。

就 EF 而言,这种情况下理想的代码/数据库设计是什么?

代码优先 - 代码

代码优先 - 表格

代码优先 - 表格

Db First - 表

Db First - 表

数据库优先 - 代码