问题标签 [ef-core-2.1]

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 投票
0 回答
83 浏览

sql-server - Entity Framework Core 性能不一致

使用 EF Core 进行创建/更新/删除的大事务时,我的性能非常不一致。

  1. API 时间在 150-800 毫秒之间变化。https://www.screencast.com/t/KfwtT5yJv0
  2. SQL 时间在 15-300 毫秒之间变化。https://www.screencast.com/t/7YuVdWp9c6

这可能是什么原因?查询正在做完全相同的事情。

诸如“删除现有副本,从原始副本创建新副本”之类的东西。

0 投票
0 回答
867 浏览

entity-framework - EF Core 2.1 更新相关数据

我的编辑控制器

当我尝试更新相关实体时,我收到以下错误

我是否以错误的方式进行更新。请帮我纠正它。我也不确定 Direct _context.update() 和 _context.students.update() 之间的区别。请赐教。

0 投票
0 回答
178 浏览

c# - 是否有可靠的方法将 IQueryable 发送到远程服务器?

我有一个 IQueryable 实例,例如:

context是使用本地 SQLite 数据库的客户端上下文。

我想以某种方式将此对象发送到在远程服务器上运行的 ASP.NET Core WebAPI,并在服务器端数据库(使用相同的模型)上执行查询。

有没有办法做到这一点?

转换为 SQL 可能是一种选择,但我质疑可靠性,因为我必须手动提供远程数据库提供程序的实例(据我所知),因此生成的查询实际上在那里有效。

我在这里有什么选择?

0 投票
2 回答
211 浏览

entity-framework - 带有 2 个孩子的 Microsoft Entity Framework Core 父级

所以我有3门课:

但我不知道如何做正确的模型构建器。我尝试的一切都失败了:(我正在学习,所以请耐心等待。

我最接近的尝试是这样的:

基本上 Owner 和 Sitter 总是 null :( 我应该保留 [ForeignKey()] 的东西还是应该使用不同的扩展方法?

0 投票
1 回答
35 浏览

entity-framework - EF Core 2.1 更新相关实体查询效率

我有一个学生模型,其中有电话号码和地址列表。当我更新学生时,需要更新相关数据(电话和地址)。为此,我在我的学生控制器中编写了一个 PUT 动作。它工作正常,但我担心查询的效率。请检查代码并建议我即兴创作(如果有)。谢谢

0 投票
2 回答
1131 浏览

c# - 覆盖 AspNetCore.Identity 表中的默认索引

我正在开发一个多租户应用程序ASP.NET Core 2.1。我正在利用AspNetCore.Identity.EntityFrameworkCore框架进行用户管理。我想在表中添加一个唯一索引。此外,在用户表和表中。NormalizedNameTenantIdRoleNormalizedUserNameTenantIdUser

这不允许我创建该索引,因为身份为角色表RoleNameIndexUserNameIndex用户表创建了默认的唯一索引。OnModelCreating在 EF Core中配置该方法的最佳方法是什么?

0 投票
0 回答
21 浏览

c# - 我们如何使用 C# 代码执行三个迁移文件中的前两个?

我想在三个文件中按顺序执行前两个迁移文件

就像我们有文件 Migration_1 Migration_2 Migration_3

它适用于带有命令 Update-Database Migration_2的包管理器控制台

但我想从 C# 代码方面做同样的事情,我尝试过下面的命令,但它按顺序运行所有三个待处理的迁移文件 DbContext.Database.Migrate();

0 投票
0 回答
596 浏览

c# - 每个类上的 Newtonsoft.Net Json 回调完全反序列化

问题说明:

我想验证服务器上反序列化 JSON 对象中的类之间的关系。例如:声称的外键在 A 类和 B 类之间是正确的。

A:

在这种情况下,我想弄清楚 ID 为 "Z" 的 A 类是否与 ID 为 "x" 和 "y" 的 B 类有有效的关系,这可能会越来越深......所以 B 可以有几个内部关系,必须在 B 完全反序列化后检查

我不想编写递归函数,因为我认为它对服务器端程序有很多性能损失。

一些属性检查可以很容易地使用Newtonsoft.Json.Serialization.IValueProvider,但问题是,我无法确定一个类何时被完全反序列化(所有必需的属性在最后一次public void SetValue (object target, object value)调用中都有自己的值,其中一些可能什么都没有,这个特性每个班级都不一样)

服务器的这一部分已经完全用反射和完全通用的方式编写。

所以问题是:我怎样才能知道这SetValue是对该对象的最后一次 SetValue 调用?(例如对象键总是最后一次调用或类似的东西)

或者我之前检查这种关系的任何其他方式IdentityDbContext.Update

谢谢

0 投票
1 回答
140 浏览

c# - 为查询类型 Ef core 2.1 初始化数据

我正在使用 InMemory 数据库来测试我的存储库逻辑。但我有这个报表数据库视图模型。

问题是,我无法使用单元测试的虚拟数据对其进行初始化。没有像 Add、AddRange 这样的东西......

所以我的问题;我可以初始化这个查询类型吗?或者查询类型不适用于单元测试?

供参考:

我可以进行单元测试,如果我更改DbQuery<>DbSet<>并在我的视图中使用ROW_NUMBER().

0 投票
0 回答
1445 浏览

asp.net-core - IIS 上的 ASP.NET Core,无法访问数据库。用户登录失败

我正在 IIS 上部署一个 asp.net 核心应用程序。我已按照 Microsoft 的指南进行操作,应用程序正在运行,但访问数据库时遇到问题。登录方法配置为使用 Indentity Pooling 进行 Windows 身份验证。检查服务器日志时,我收到以下错误消息:

用户“STG\SGSTH-SRV-TST99$”登录失败。原因:找不到与提供的名称匹配的登录名。[客户: ]

身份验证在 Visual Studios 中有效,但随后我的个人帐户用于身份验证。我已确保登录名存在于安全 >> 登录名中,如果尝试创建用户,则会收到一条错误消息,指出用户已经存在:

创建用户时的错误信息

非常感谢您对此问题的任何帮助。

谢谢!

IIS 10、ASP.net 核心、EF 核心。