相关疑难解决方法(0)

添加 ADO.Net 实体框架给出“项目的目标框架不包含实体框架运行时程序集”

我在 VS2022 中的解决方案中添加了一个新的 .Net 6.0 项目。安装了EntityFramework 6.4.4。现在尝试install-package entityframework将 ADO.Net 实体框架模型添加到项目中。我收到错误:

该项目的目标框架不包含实体框架运行时程序集。请查看项目属性页面上的目标框架信息。

我尝试添加其他几个 EF 包(根据此处的文档,这应该不是必需的: https: //learn.microsoft.com/en-us/ef/ef6/fundamentals/install)。我认为问题出在我的安装上,但我创建了一个包含问题的 .Net 6.0 控制台应用程序并将其发送给同事,他收到了相同的消息。

还在这里找到了这个主题:在 Visual Studio 2022 上添加实体框架模型,但那里没有答案。

重现步骤:

  1. 创建 .Net 6.0 控制台应用程序。
  2. install-package entityframework使用包管理器控制台窗口安装 EF6 包。
  3. 右键单击解决方案并选择“添加”=>“添加项目”。
  4. 在左侧窗格中单击“数据”。
  5. 选择“ADO.Net 实体框架模型”。
  6. 单击“添加”。

在此输入图像描述

出现错误:

在此输入图像描述

entity-framework-6 .net-6.0 visual-studio-2022

72
推荐指数
6
解决办法
7万
查看次数

Linq-to-SQL中的SubmitChanges和Entity Framework中的SaveChanges之间的技术差异是什么?

SubmitChangesLinq-to-SQL和SaveChangesEntity Framework 之间的技术差异是什么?

我们知道SubmitChanges是一个DataContext类的概念,SaveChanges而是一种方法ObjectContext.

还有其他差异吗?

谢谢

.net c# entity-framework

17
推荐指数
1
解决办法
2万
查看次数

LINQ 的“Where”方法如何工作?

LINQ 的“where”方法到底是如何定义的?我猜实现是这样的:

public static IEnumerable<T> Where ( this partialParent, Func<bla,bla> myDelegate ) 
Run Code Online (Sandbox Code Playgroud)

现在,如果我像这样调用Where方法:

from c in context.Con
where ( c.Col1 == c.Col2 )
select c
Run Code Online (Sandbox Code Playgroud)

我猜"c.Col1 == c.Col2"是传递下来并且某个foreach循环进行检查。但是当我像这样调用 where 时发生了什么:

where ( c.Col1 == c.Col2 || c.Col3 == c.Col4 )
Run Code Online (Sandbox Code Playgroud)

这两个“检查”是否作为一个整体表达式传递下来?也许我错过了一些非常简单的事情。

c# linq

3
推荐指数
1
解决办法
3461
查看次数