问题标签 [dbset]

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

entity-framework-5 - DbContext 如何初始化自动 DbSet特性?

考虑以下类:

并实例化一个新对象:

为什么 mycontext.Orders 不为空?什么时候初始化的?谁初始化了它?我真的很困惑,因为基类(DbConetxt)无法访问派生类属性,因此不可能在基对象中初始化自动属性。

0 投票
3 回答
2162 浏览

c# - DBSet如何多次更新?

尝试通过使用 dbset 更新记录时遇到问题。以下是我的代码:

当我更新记录时,它会更新所有记录。然后我检查数字 EPins.Count(),我发现它不是 5 而是全部的数字。如果我想更新前 5 条记录,我应该怎么做?

0 投票
2 回答
26316 浏览

asp.net-mvc - ASP.MVC db Find(),但带有非主键参数

如何通过使用不是主键的键来获得结果列表?更具体地说,我有一个复合主键,我想用一列的参数检索所有匹配项。

我认为,在控制器中的 ActionResult 中,它类似于

但事实并非如此,因为 Find() 仅适用于整个 PK。

我在实体模型类中将我的 PK 声明为:

0 投票
1 回答
11874 浏览

c# - Converting an IQueryable to a DbSet

I'm not sure that this is possible, but I'm trying to unit test a repository that uses a DbSet. I thought the easiest solution would just be to make an Enumerable, and replace the DbSet with that, this is my attempt.

I'm using C#, EntityFramework, XUnit, and Moq

The error that gets thrown is it can't convert type EnumerableQuery to a DbSet on the mockContext.Returns statement.

Here is something similar to what the interfaces look like.

PersonRepository.cs

IPersonRepository.cs

IRepository.cs

EFRepository.cs

0 投票
2 回答
1648 浏览

c# - 如何在单个 LINQ 语句中查询多个 DbSet

我在使用 EF 时遇到了一些麻烦。在此模型中,我想获得名称与某个字符串匹配的所有产品的 IEnumerable,以及名称也与相同字符串匹配的订单中的产品,所有这些在结果 IEnumerable 中都没有重复的产品。

也就是说,搜索相同字符串并将其与产品名称和订单名称进行匹配并返回匹配产品的查询。

谢谢

0 投票
4 回答
8288 浏览

c# - DbSet.Cast() 错误:无法创建 DbSet来自“实体”类型对象的非通用 DbSet

版本信息:

我正在使用 C# 4.5、Entity Framework 6.0 和 MEF。

代码和单元测试

我创建了一个测试项目来解释这个问题: https ://skydrive.live.com/redir?resid=E3C97EC293A34048!2234

请打开 UnitTest 项目并尝试运行 TestIfItWorks() 单元测试。

问题

我想将非通用 DbSet 转换为其通用版本,但出现以下异常InvalidCastException: Cannot create a DbSet<IUser> from a non-generic DbSet for objects of type 'User'::

User 类正在实现 IUser 所以你会认为强制转换不应该是一个问题,除非 DbSet 代码仅限于具体的类(我希望没有,否则我需要围绕非泛型 DbSet 创建一个包装器以将其转换为泛型 DbSet或找到当前 DbSet 实现的替代方案)。

如果您想知道为什么我使用接口,即使它们目前不受 Microsoft 支持,我会给您一些解释(希望这会过滤掉“不要这样做”的响应,而不是提供解决方案):

我正在使用 MEF 和 EntityFramework 创建一个松散耦合的数据层引擎,通过它我可以为每个项目提供实体(及其相应的配置)。我一直在广泛使用接口来定义引擎。使用 MEF 在运行时发现上下文中实体的元数据和具体实现。

代码摘录

0 投票
0 回答
600 浏览

entity-framework - 无法将 dbSet 隐式转换为 ObjectQuery

那是我的代码,它不能这样工作,请帮助我!!!

0 投票
1 回答
118 浏览

c# - 在此示例中,如何强制 EF 仅更新 Db 中的一列?

我想要实现的是只更新数据库中实体的特定属性。(模仿 UPDATE Foo Set Status = 'kool' WHERE ID = 99 之类的东西)。

我试试这个:

问题是当我将 State 设置为 EntityState.Modified 时,所有属性都标记为 Chagned -IsModified 返回 true-。

当我将其注释掉时,更新没有完成 - Db 中没有发生任何更改。

问题: 如何强制 EF 仅更新 foo 对象的 Status 属性而不触及 Db 中的其他字段?

0 投票
0 回答
77 浏览

c# - 添加不插入/工作

我有一个 AccountRegister 模型,我将它制作成一个 Account 模型,然后将该 Account 模型添加到数据库中。当我单击创建按钮时,错误/异常为零,它只是重定向到索引,就好像它已插入数据库一样,但它没有。

我使用 AccountRegister 模型的原因是我希望用户输入两次密码和电子邮件。

我希望有人可以帮助解决这个问题。

型号类:

控制器方法:

数据库表:

0 投票
4 回答
4531 浏览

entity-framework - 从 DbSet 继承以增加财产为目的

有没有办法从 DbSet 继承?我想添加一些新属性,如下所示:

但我不知道如何在我的 DbContext 中实例化它

我怎样才能做到这一点?