问题标签 [entity-framework-core]

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 回答
8030 浏览

c# - 无法使用数据注释

所以在这里我们试图在比赛前掌握 EF7,而我遇到了我只能称之为疯狂的事情。

在 EF6 中,我使用了很多注释,我试图将其转移到 EF7 中,根据 UnicornStore 项目,这是完全有效的,但是我遇到了一个问题,其中 Visual Studio 2015 抱怨我没有参考到 System.ComponentModel.DataAnnotations 程序集。很公平,我添加了对程序集的引用,现在我从 DNX Core 5.0 中得到以下信息:

对于我的生活,我无法弄清楚这里发生了什么,因为当我将 UnicornStore 作为我的参考时,在 project.json 中没有对该程序集的引用,但是在项目中有一个参考。 lock.json,据我了解,您不应该编辑该文件。

最大的问题是我做错了什么?为什么 DNX 4.5.x 不会抱怨参考,而 DNX Core 5.0 会抱怨?

0 投票
0 回答
461 浏览

f# - F# 身份框架

我正在创建新项目(只是为了学习)。它将以 ASP.Net 5 MVC 6 和 EF 7 代码优先方法编写。此外,我想制作服务层,即用 F# 4.0 编写的所有业务逻辑(除了一些教程外,从未用那种语言写过一行)。这意味着我要在所有新的东西中创建这个项目,或者使用我以前没有使用过的工具。

目前我有空的解决方案。所以我摆在我面前的第一个任务是创建身份验证逻辑。然而,所有教程都显示了它是多么简单:我不想在控制器中有任何逻辑(除了视图操作)。所以我需要创建一个将被调用并登录/注册用户的服务。

问题是所有业务逻辑都将用 F# 编写。我找不到任何有关如何完成此类任务的材料。你们能指导我如何在 F# 中使用 Microsoft 标识和代码优先方法。

任何指南、教程(是的,我已经通过谷歌叔叔查看过)将不胜感激。

0 投票
2 回答
2896 浏览

asp.net-core - Entity Framework 7 分组依据

我正在尝试运行以下代码,但是当我检查 SQL 探查器时,它看起来像是在表上运行了一个完整的选择,然后在它从数据库返回所有结果后进行分组。任何帮助表示赞赏。

0 投票
3 回答
25411 浏览

entity-framework - 如何使用 Entity Framework Core 获取主键值

我们目前正在使用下面的方法,它依赖于抽象存储库中的 IObjectContextAdapter。从我正在阅读的内容来看,似乎与 ObjectContext 相关的任何内容都已从 Entity Framework Core 中删除。下面的方法是我们唯一依赖与 ObjectContext 相关的任何东西的地方。

我们想升级到 Entity Framework Core。这是我们唯一的路障。有没有办法使用 Entity Framework Core apis 获取实体的主键值?

0 投票
1 回答
2278 浏览

c# - 无法在类库包中的 Entity Framework 7 beta4 上运行迁移

我无法在类库包中执行迁移命令。我的 dnvm 版本是(来自 global.json):

我在我的项目 JSON 中导入它。

我的 DbContext 继承类中的 OnConfiguring 方法是

但是当我运行时,dnx . ef migration add initial 我得到以下输出:

我一直在努力解决这个问题,所以感谢所有帮助。谢谢。

0 投票
1 回答
157 浏览

asp.net - asp.net 5、indentity 3 和模块化项目

我正在尝试在 dnxcore50 上的 asp.net 5 (vnext) 上创建模块化项目。我对新的 Identity 3 有问题(或者用自定义安全类替换它)。

我的项目包含 Models 子项目、DataAccess 子项目和 DataAccess.EntityFramework 子项目。DataAccess 仅包含接口(例如,用于处理实体的存储库)。DataAccess.EntityFramework 包含 DataAccess 的实体框架实现。(我不想与 EF 有密切的联系,只能通过接口。)一切都很好,它可以工作。

但现在我需要添加用户实体。如果我想使用 Identity,我需要从 IdentityUser[int] 派生 User 类。但是 IdentityUser 类位于 Microsoft.AspNet.Identity.EntityFramework 中!模型类如何位于特定于 ORM 的命名空间中?

因此,正因为如此,我想用我的自定义安全解决方案替换 Identity,但现在控制器的 User 属性是 ClaimsPrincipal,替换它看起来比使用 IPrincipal 更复杂。

我现在看到的唯一方法是在基本控制器中创建另一个属性 User 并手动编写所有内容,但这不是我想要做的。

所以我需要一些建议,我该如何解决所有这些问题。

谢谢!

0 投票
1 回答
755 浏览

c# - EF7 一对一关系

我目前正在处理新的 EF7,在处理一对一关系时遇到了奇怪的行为。

我有以下型号

我正在按如下方式构建表格:

我现在遇到的问题是,当我尝试查询具有计量单位的材料时,计量单位始终设置为空,但是当我检查生成的表时,我可以清楚地看到外键是实际创建。

我还尝试在 OnModel 创建中强制建立关系,但是我仍然无法检索单元对象。

我应该如何添加这个参考,或者这甚至还支持吗?

0 投票
1 回答
4167 浏览

entity-framework-migrations - Entity Framework 7 Migration Scaffolding in Class Library with Configuration

尝试将迁移添加到位于 ASP.NET 5 类库中的 EF7 模型。当运行dnx . ef migration add mymigration失败时,结果会有所不同,具体取决于我在哪个项目上运行它。

如果我在主项目的文件夹中运行它,它找不到 a DbContext,这是有道理的,因为DbContextis 在共享项目中,而 ef 命令可能不关心依赖关系。

如果我在共享项目的文件夹中运行它,它无权访问 startup.cs 中指定的连接字符串。我从这样的问题中收集到,如果OnConfiguring您在 的方法中指定连接字符串,它确实可以从共享项目中工作,DbContext但我真的想将此代码与配置分开。

我在 EF7 存储库中遇到了一些问题日志,其中提到他们实现了用于指定项目和上下文的命令行选项,但没有示例,我无法通过查看提交历史记录中的源代码来弄清楚如何使用它.

0 投票
1 回答
1339 浏览

asp.net-identity - EF7 身份未加载用户扩展属性

我有一个扩展的 IdentityUser 类,其中包含对我的数据库中另一个实体的引用,但是每当我尝试使用 UserManager 获取用户时,引用的实体总是为空:

我的用户类的实现

使用用户引用属性的控制器

我还尝试从引用中删除 virtual 关键字,以便延迟加载,但我不确定是否已在 EF7 上实现。

关于如何实现这一目标的任何想法?

0 投票
1 回答
179 浏览

entity-framework - SQLite.net Extensions 多次加载同一个实体,而不是返回同一个引用

我在 Windows 10 通用应用程序中使用 SQLite.Net 扩展的 PCL 版本。这是我第一次使用它。它通常似乎正在工作,但它似乎是多次加载实体,而不是重用对同一对象的引用。

根据 SQLite.Net 扩展文档:

SQLite-Net Extensions 将确保任何对象只从数据库中加载一次,并将解决循环依赖和反向关系,同时保持完整的引用。这意味着具有相同标识符的同一类的任何返回对象都将是对完全相同对象的引用。

这对我来说似乎没有发生。这是我的代码:

当它运行时,我创建了一些初始数据。然后我使用 GetWithChildren 加载这些对象并对其进行调试。结果如下:

如您所见,对象似乎加载正确,但组 1(例如)的对象引用不同(请参阅哈希码)。

我是否可能误解了 SQLite.Net Extensions 处理对象引用的方式?也许它可以在对 GetWithChildren 的一次调用中处理重用对象引用,但不能在同一个 SQLiteConnection 上的多次调用中处理?

如果是这种情况,您应该如何加载具有这些关系的更复杂的对象图?