.net-core - .net core 2 控制台应用程序的独立发布未部署正确版本的 System.Data.SqlClient

标签 .net-core

我有一个使用 .Net Core 2.0 创建的小控制台应用程序,在我的开发机器上,无论是通过 Visual Studio 2017 调用还是使用“dotnet”命令从命令提示符调用,一切正常。

但是,当我将应用程序发布(使用 dotnet publish)作为自包含应用程序,然后将其放置在我们的一台服务器上时,尝试运行它时出现错误:

Error:
  An assembly specified in the application dependencies manifest (Reporter.deps.
json) was not found:
    package: 'System.Data.SqlClient', version: '4.4.0'
    path: 'runtimes/win/lib/netstandard2.0/System.Data.SqlClient.dll'

查看publish文件夹,里面的System.Data.SqlClient.dll程序集好像是4.6.25519.03版本。

有人愿意冒险猜测为什么它发布了它所依赖的版本以外的版本吗?

马丁

最佳答案

我在 dotnet 3.1.101 上编写的控制台应用程序也有同样的问题。但后来我注意到忘记在我的发布中复制名为“runtimes”的文件夹。

关于.net-core - .net core 2 控制台应用程序的独立发布未部署正确版本的 System.Data.SqlClient,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47693283/

相关文章:

c# - 如何使用 dotnet publish 与远程主机执行依赖于框架的部署

.net - 从.Net Core api返回html文件

.net-core - Microsoft.AspNetCore.Hosting.Abstractions list 定义与程序集引用不匹配

c# - MVC 需要 TagHelper 使用 FluentValidation ASPNET Core

c# - .NET Core 中 gamedev 的浮点确定性

datetime - System.DateTimeOffset 实例报告 1883 年 11 月 19 日之前的日期的令人惊讶的 UTC 偏移量

.net-core - 添加迁移或 dotnet ef 迁移添加

.net - 使用 dotnet core 登录 FluentD?

c# - 将 Serilog 作为 Microsoft.Extentions.Logging.ILogger 正确注入(inject) .net 核心类 - 不是 ASP .Net Core

c# - 如何在 .net core 中反序列化 json 数据集