问题标签 [entity-framework-6]

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 投票
2 回答
15328 浏览

.net - Entity Framework 6 - 如何将此行转换为异步?

我想知道如何将此语句更改为异步?

我没有看到任何async where我可以使用的陈述。

0 投票
2 回答
811 浏览

entity-framework - EF6 - 代码优先 - 是否需要属性映射?

我一直在阅读使用实体框架的代码优先方法。不幸的是,我找不到与 EF4 相关的更多文档。但是我读过的文档(scott gu's blog on EF4)表明我不需要映射。

因此,我使用 EF6 Power Tools 从现有数据库生成了一个代码文件,这会生成我的所有模型类和一个映射文件夹。我自动查看了其中使用 Fluent API 的映射文件(我认为这是正确的)并描述了有关表的详细信息。

现在阅读这篇文章是有道理的,它可能不知道主键、必需属性、关系,但我没有得到的是博客文章中的属性到列映射,这些都是不需要的,所以我为什么需要它们?

如果无法在代码中表示列名,我可以理解需要它们,但我的命名约定不允许这样做。

我问的主要原因是一个可维护性问题,我宁愿只在一个地方有特定属性的代码,这些行this.Property(t => t.ID).HasColumnName("ID");对我来说似乎是多余的。

任何在 EF6 代码优先方法上有任何有用链接的人都将不胜感激,谷歌也失败了:)

0 投票
4 回答
36305 浏览

c# - Entity Framework 6 Code First 函数映射

我想将 Entity Framework 6 集成到我们的系统中,但是有问题。

  1. 我想使用代码优先。由于其他原因,我不想使用 Database First *.edmx 文件。
  2. 我使用属性映射 [Table]、[Column] 这很好用
  3. 数据库有许多用户定义的函数,我需要在 Linq To Entities 查询中使用它们。

问题是:

我无法通过 [Table]、[Column] 等属性映射函数。只有 1 个属性可用 [DbFunction],它需要 *.edmx 文件。

我可以在 *.edmx 文件中进行函数映射,但这意味着我不能对实体使用属性映射:[表]、[列]。*.edmx 或属性中的映射必须是完整的。

我尝试通过以下代码创建 DbModel 并添加功能:

但有例外:

在模型生成期间检测到一个或多个验证错误:

问题出在“edmType”变量中。我无法为函数正确创建 ReturnType。有人可以建议我如何将功能添加到模型中吗?添加功能的接口是暴露的,所以应该可以做,但是网上没有关于这种情况的信息。可能有人知道 Entity Framework 团队何时会为 Line To Sql 之类的函数实现属性映射。

EF 版本:6.0.0-beta1-20521

谢谢!


是的,这对我有用。但仅适用于标量函数。我还需要返回 IQueryable 的 map 函数:

其中 T 是 EntityType 或 RowType 或任何类型。我根本无法做到这一点(EF 版本是 6.0.2-21211)。我认为这应该以这种方式工作:

但仍然没有运气:

有没有可能?大概步骤不对吧?可能会在 EF 6.1 中添加支持。任何信息都会非常有用。

谢谢!

0 投票
2 回答
7210 浏览

asp.net - Register entityFramework with MySql.Data 6.7.2.0 connector

I have tried to configure my web project to use MySQL pre release of .net connectors, version 6.7.2.0. However, i keep getting this message, even if I try my best configure my project to use the 6.7.2.0 version of the connectors.

As it is now, I keep getting this errormessage:

No Entity Framework provider found for 'MySql.Data.MySqlClient' ADO.NET provider. Make sure the provider is registered in the 'entityFramework' section of the application config file. See http://go.microsoft.com/fwlink/?LinkId=260882 for more information.

I have tried different ways to configure my Web.config file, and here is my current settings:

I have installed EF6 alfa3 from NuGet. Currently my connector has been installed manually from this downloaded file, I tried to install it from NuGet repository, but with the exact same result.

0 投票
1 回答
1857 浏览

c# - 使实体框架使用 Contains 而不是 Like 并解释 'ESCAPE ~'

我有一行 LINQ,我在 EF 中使用它基本上是在做myTable.Where(c => c.Contains('mystring'));

这是生成的代码:

我的两个问题是:

  • 如何让它使用 CONTAINS(...) 而不是 LIKE?当表使用全文索引时,LIKE 似乎非常慢。复制和粘贴查询需要 4 秒才能执行,但如果我将 LIKE 更改为 CONTAINS() 它会立即执行。

  • 为什么它会 ESCAPE '~' ?通过将其复制+粘贴到 SQL Server 中,如果我删除“ESCAPE”部分,它的执行速度会快 4 倍左右。

0 投票
1 回答
1094 浏览

entity-framework - 如何使用实体框架触发迁移

我想通过代码触发数据库迁移到最新版本。

我已经配置了迁移并且它们工作正常,但我可以让它们迁移的唯一方法是查询我认为不需要的数据库。

我确信我刚刚错过了文档中的某些内容来触发迁移,但如果有人能指出我正确的方向,我将不胜感激。

0 投票
1 回答
526 浏览

sql-server - Mono 3.0.10 中的 Entity Framework 6 连接 SqlServer 抛出 Provider Incompatible Exception

我创建了一个简单的控制台测试应用程序,它可以与连接 SqlServer DB 的 Entity Framework 5 一起正常工作。然后,我尝试通过将项目引用从 MS EF5 替换为 Mono EF6,将项目转换为使用 Mono-3.0.10,添加对 mono EntityFramework.SqlServer.dll 的引用,并将 App.Config 文件更新为实体框架版本6.0.0.0。我已经设法在 Mono 3.0.10 配置文件下使用 Visual Studio 2012 构建项目,没有任何错误。

现在,当我尝试在 Mono 下运行项目时,我得到了一个异常:

System.Data.Entity.Core.ProviderIncompatibleException:提供程序未返回 ProviderManifest 实例----> System.UriFormatException:无效的 Uri。无法确定 Uri 的格式:System.Data.Resources.SqlClient.SqlProviderServices.ProviderManifest.xml。

任何人都可以提供帮助,或者至少提供一个代码示例来展示您如何使用 Mono 进行操作吗?谢谢

0 投票
1 回答
2711 浏览

entity-framework - 类型“System.Data.Spatial.DbGeography”必须是不可为空的值类型才能将其用作参数“T”

我正在使用 EF 6,但在我的一个模型上遇到了一个非常奇怪的错误:

字段配置为:

错误是:

类型“System.Data.Spatial.DbGeography”必须是不可为空的值类型,才能在泛型类型或方法中用作参数“T” System.Data.Entity.ModelConfiguration.Configuration.StructuralTypeConfiguration<TStructuralType>.Property<T>(System.Linq.Expressions.Expression<System.Func<TStructuralType,T>>

在此先感谢您的帮助

0 投票
2 回答
6175 浏览

c# - Entity Framework(六)性能优化建议

我的应用程序中有一个 ADO.Net 数据访问层,它使用基本的 ADO.Net 和 CRUD 存储过程(每个操作一个,例如 Select_myTable、Insert_myTable)。可以想象,在大型系统(如我们的系统)中,DA 层所需的 DB 对象数量非常多。

我一直在研究将层类重构为 EF POCO 类的可能性。我已经设法做到了,但是当我尝试进行性能测试时,它变得非常可怕。使用下面的类(创建对象,将 Key 设置为所需的值,调用 dataselect),100000 次数据加载只需要大约 47 秒(数据库中只有少数记录)。而存储过程方法大约需要 7 秒。

我正在寻找有关如何优化这一点的建议——需要注意的是,我无法更改该层的公开功能——只能更改它如何实现方法(即我不能将上下文所有权的责任传递给 BO 层)

谢谢

0 投票
0 回答
59 浏览

entity-framework - 如何将我的 DbContext 保存在另一个项目中?

我正在尝试将 EF 6 与自定义约定一起使用,但IConfigurationConvention无法识别界面!

套餐:

实体框架 6.0.0-beta1-20702

我正在关注这篇文章,但未能成功在 EF6 中使用自定义约定