【发布时间】:2019-12-06 01:49:17
【问题描述】:
上下文
- 创建实体框架数据层(Hibernate 经验)
- 连接到 SQL Server Express
- 客户端是一个简单的桌面应用程序
- 我无法使用 Entity Framework CORE
详情
我一直在研究 Entity Framework 6 的文档 here 以及其他一些资源。我发现的有关 EF6 的所有内容都已过时。例如"says" 它会在您通过 nuget 管理器安装时将内容添加到配置文件中,但不会...
安装 EntityFramework NuGet 包时,entityFramework 部分会自动添加到项目的配置文件中。
令人沮丧,但我可以解决这个问题,而不是我的第一个 app.config。
然而在 Entity Framework 文档中进一步让我感到困惑的是提供者注册。 Nuget 应该安装对EntityFramework.SqlServer 的引用,但它从未安装过。我也无法通过 nuget 包管理器安装它。我设法在 nuget.org 中找到它,但它未列出,自 2015 年以来未更新
<providers>
<provider invariantName="System.Data.SqlClient"
type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
</providers>
问题
我还需要EntityFramework.SqlServer吗?如果我也有的话,我可以很容易地添加它,但这是正确的方法吗?人们还在现实世界/产品中使用这个旧的 .dll 吗?
我很想知道拥有更多 ET 6 经验的人将如何配置一个新项目。
更新 - 2019 年 12 月 9 日
所以再深入一点,如果您使用 PackageReference 而不是 Package.config 安装 Nuget 包,则此行为不起作用。您可以通过导航到 Tools --> Options--> Nuget Package Manager --> General --> Default package management format
来更改它【问题讨论】:
-
EntityFramework.SqlServer是 Entity Framework Core 的一部分 - 不是在完整 .NET 框架上运行的“基础”Entity Framework (v6.x)
标签: c# sql-server entity-framework nuget