41得票6回答
使用Entity Framework 6.1 fluent API创建唯一索引

我有一个名为“Name”的列,必须是唯一的,没有外键或类似的东西。 EF 6.1终于通过注解支持创建这样的索引。这已经在SO上讨论过了。但似乎只能通过类中的注解来完成。我如何仅使用Fluent API来实现呢? 像这样:public class PersonConfiguration : ...

34得票2回答
无法确定类型为“System.Data.Sqlite.SqliteFactory”的提供程序工厂的提供程序名称。

我想在我的Web API项目中使用SQLite Entity Framework,但它总是无法正常工作。 这是我的开发环境: Visual Studio 2013,.NET Framework 4.5 SQLite包版本为1.0.97,我安装了以下软件包: system.data.sq...

9得票1回答
在MVC5中,IdentityDbContext和IdentityDbContext<ApplicationUser>有什么区别?

在 ASP.NET MVC5 应用程序中,应该基于什么基础来决定使用 IdentityDbContext 还是 IdentityDbContext&lt;ApplicationUser&gt;? 与非泛型的 IdentityDbContext 相比,使用 IdentityDbContext&...

65得票10回答
添加ADO.Net Entity Framework时出现“项目的目标框架不包含Entity Framework运行时程序集”的错误。

我在VS2022中的解决方案中添加了一个新的.Net 6.0项目。使用install-package entityframework安装了EntityFramework 6.4.4。现在尝试向项目添加ADO.Net实体框架模型时出现错误: 项目的目标框架不包含Entity Framewor...

7得票1回答
如何检查DBContext是否已被释放?

我希望能在不创建新上下文的情况下与从外部调用(继承类)的另一个方法共享DB上下文,除非该上下文被处置。我需要检查上下文是否已被处置,以便我可以创建新的上下文。 这是一个rest api。有多个实体的批量上传,我想要共享事务,以便如果其中一个失败,它将不会提交到DB。

7得票2回答
Entity Framework 6:Skip()和Take()不会生成SQL语句,而是在加载到内存后过滤结果集。或者我做错了什么?

我有以下的代码,应该获取一些书籍,并从该书籍(Book实体)中检索前2个标签(Tag实体)。所以Tags是Book实体的一个导航属性。 using (var context = new FakeEndavaBookLibraryEntities()) { Book firstBo...

47得票3回答
EF 6 数据库优先模式:如何更新存储过程?

我们正在使用Entity Framework 6.0.0,并使用基于数据库的代码生成工具(类似这样)。它似乎运行良好,但是当我们更新或刷新模型时,存储过程的更改没有反映出来,向表添加列可以反映出来,但添加到存储过程中的字段则不行。 有一个解决方法,那就是在更新模型之前删除生成的存储过程。只要...

11得票2回答
EntityFramework拒绝忘记旧列

我正在使用EntityFramework 6.1.3,基于数据库的方法。 我现在希望我之前选择了代码优先... 我有一些表格的数据库。我以前建立了我的edmx。然后,我更改了一些列的类型并添加了一些列。例如,将一个bit列更改为一个int列。 我尝试使用右键单击-&gt;从数据库更新模型从数据...

27得票7回答
使用RemoveRange()批量删除行

我尝试从一张表中删除多行记录。 在常规的SQL Server中,这很简单,就像这样:DELETE FROM Table WHERE Table.Column = 'SomeRandomValue' AND Table.Column2 = 'AnotherRandomValue...

14得票4回答
'Y'中的实体参与了'FK_Y_X'关系。找到了0个相关的'X'。期望找到1个'X'。

我在X和Y之间有一个1..*的关系,其中X是父级。当我尝试删除记录Y时,我收到以下异常消息:   Y中的实体参与了“FK_Y_X”关系。找到了0个相关的“X”。预计1个“X”。 我目前正在以通用的、断开连接的方式尝试删除记录,方法如下:public bool Delete(TEntit...