【问题标题】:Creating a library for ASP.NET Core, but using System.Data.SqlClient为 ASP.NET Core 创建一个库,但使用 System.Data.SqlClient
【发布时间】:2017-08-18 22:13:37
【问题描述】:

我想在 VS17 中为 ASP.NET Core 创建一个库,该库使用 System.Data.SqlClient 来访问数据库。我选择了 .NET Core 库类。 问题是我收到如下错误:

CS0012 'Object' 类型是在未引用的程序集中定义的。您必须添加对程序集 'mscorlib, Version=4.0.0.0, >Culture=neutral, PublicKeyToken=b77a5c561934e089' 的引用。

在 stackoverflow 上,我发现了一个建议添加 NuGet 包的线程:Microsoft.NETCore.Portable.Compatibility,但它只是抛出以下异常:

FileNotFoundException:无法加载文件或程序集 'System.Data, >Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'。

我尝试获取其他库类型,例如 .NET Standard 或 .NET Framework,但我也遇到了错误,例如标准 System.Data.SqlClient 中的某些类型不可用。

有没有办法为 ASP.NET Core 创建一个库,然后使用 SqlClient 来访问数据库?

【问题讨论】:

  • 好吧,你跑进了杂草丛中。 SqlClient 包含在 .net 核心中。由于某些未知原因,您正在引用 .net 框架版本。
  • 我试着这样做:c-sharpcorner.com/UploadFile/66489a/… 但它变得相当复杂,因为我有不止一种类型的库可供选择。我一直在我以前的 Net Core 应用程序中使用 SqlClient,这就是为什么我在尝试将一些方法放在单独的库中时惊讶地发现这些错误

标签: c# asp.net-core visual-studio-2017


【解决方案1】:

我遇到了类似的问题。 尝试在包管理器控制台或命令提示符下简单地运行 dotnet restore myProjectName

通过这种方式,您项目中的包和 SDK 被下载,参考问题将消失。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-09
    • 2021-03-17
    相关资源
    最近更新 更多