问题标签 [ef-fluent-api]

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 投票
3 回答
127908 浏览

linq-to-sql - 如何使用方法语法在 linq to sql 中进行连接?

我在 LINQ to SQL 示例中看到了很多关于如何在查询语法中进行连接的示例,但我想知道如何使用方法语法来做到这一点?例如,我该如何执行以下操作

有一个.Join()?谁能说明或提供另一个简单的例子?

0 投票
2 回答
3540 浏览

entity-framework - 实体框架 Linq 查询:.Where 链 vs &&

这个问题与使用带有实体框架的 Linq 进行查询优化有关。

.Where链接子句和在带有实体框架的 linq 查询&&的单个子句中使用之间有什么区别吗?.Where

例如:假设我有以下代码:

或者

在评估这些产生相同结果的语句时,linq 和实体框架是否以相同的方式评估它们?即,两者是否具有相同的执行计划,因此同样有效?

0 投票
4 回答
8366 浏览

c# - 使用实体框架 Fluent Api 映射 System.Uri

很简单的问题。我有一个模型,它的属性是一种System.Uri类型。 Uris 没有默认的无参数构造函数,也没有 ID 字段。有什么方法可以覆盖我的模型生成,以自定义方式将其存储在数据库中(例如,作为 a string)?在 NHibernate 中,我以前通过实现来完成此操作IUserType,但我在 CodeFirst 中找不到类似的机制。

显然,我可以创建一个Uri在底层使用 a 并公开常规可映射属性和构造函数的自定义类型,我只是好奇是否有任何方法可以映射此系统类型,这样我就不必制作这样的包装器。

0 投票
1 回答
41632 浏览

entity-framework - Entity Framework Code First - Fluent Api vs Data Annotations 的优缺点

在使用实体框架代码优先创建数据库时,可以从代码中提取很多数据库模型。Fluent API 和/或属性可用于微调模型。

与 Data Annotations 相比,Fluent Api 的优缺点是什么?换句话说:即使在某些情况下两种方法都可以使用,在什么情况下一种方法应该优于另一种方法?

0 投票
5 回答
33055 浏览

c# - 什么是实体框架流利的 api?

我不断听到有关实体框架 fluent-api 的消息,但我正在努力寻找一个好的参考。它是什么?

我们使用提供的实体框架和建模工具。这就是全部吗?还是有什么不同?

同样,如果不是太宽泛的问题,那么 POCO 是什么?我知道它代表普通旧 CLR 对象,但这对我作为已经使用 EF 和设计器模型工具的人来说意味着什么?如果这个问题太模糊,请忽略它。我只是在这里学习,您愿意提供的任何信息都是有帮助的。

0 投票
3 回答
7864 浏览

c# - 映射到已经存在的数据库表

我正在使用Entity Framework 4.1 code first连接到已经存在的数据库。我首先使用的表称为Bank. 我也有一个Bank class作为我的域模型。这就是我映射班级和表格的方式:

我的银行表:

我的银行类如下所示:

当我想退回所有银行时,我遇到了问题。从以下位置返回的 SQL 语句:

是:

这是行不通的,因为我的表没有 Id、Name 和 IsActive 列。我将如何解决这个问题,EF 会自动将 BankId 映射到 Id 并将 BankName 映射到 Name 吗?

0 投票
2 回答
12454 浏览

c# - 与 Entity Framework Fluent API 的一对一关系

我在我的一个实体上进行反向导航时遇到问题。

我有以下两个对象:

现在我在 CandidateData 对象上的外键导航工作正常。我无法让候选对象的反向导航正常工作(如果可能的话)。

这是我的 OnModelCreating 函数:

除了在数据库中我得到两个链接到 CandidateId 的列之外,它已经接近工作了。我从 POCO 对象中得到了一个,我得到了另一个列 Candidate_CandidateId,我假设它是由模型构建器创建的。

我此刻安静的迷失了。有人可以说明发生了什么吗?

0 投票
4 回答
6116 浏览

c# - EF Code First Fluent API 定义唯一约束

我试图首先使用流利的代码配置来强制执行列的唯一约束。有没有比在业务逻辑中实现它或使用类似下面的方法更好的方法

或者我想知道是否不可能使用流畅的配置来实现独特的约束?

编辑 :

已确认这对于流畅的配置是不可能的。但话又说回来,我想知道最好的方法是什么?并且想知道 EF 不支持这一点的原因。

0 投票
1 回答
27936 浏览

c# - 如何通过 Fluent API Entity Framework 定义多对多关系?

下面是我的模型:

很明显,这两个实体都有多对多的关系。我选择了 fluent api 来告诉实体框架关于这种关系,即

但是当我这样做时

我得到异常

内部异常:

但是当我从另一边添加配置时,一切正常。IE

为什么?。为什么我必须从两个实体中添加配置,我在这里和许多其他地方都读过,其中一个实体的配置应该做。

什么情况下,我应该为关系中涉及的两个实体添加配置?

我需要明白这一点。为什么。请帮忙。

0 投票
0 回答
692 浏览

c# - 继承类型导致的 OData 结果上的列名无效

代码

模型

我有一个基础和一个特定的类

英孚配置

WebApi 配置

问题

当请求 GET/api/agencias(4471)时返回:

试图

搜索互联网,我发现可能的原因可能是配置错误,如问题Multiple inheritance with Entity Framework TPC所示。

所以我尝试按照描述进行设置:

我补充Map(m => m.MapInheritedProperties());EmpresaConfiguracaoAgenciaConfiguracao

错误:

在包管理器控制台上运行Add-Migration test或执行应用程序结果:

'Empresa' 类型无法按定义进行映射,因为它映射来自使用实体拆分或其他形式继承的类型的继承属性。要么选择不同的继承映射策略以便不映射继承的属性,要么更改层次结构中的所有类型以映射继承的属性并且不使用拆分。