WinForms:无法加载 System.Memory

问题描述 投票:0回答:0

我重构遗留 WinForms 应用程序。 现在它是基于 NET Framework 4.8 的应用程序,可与 SQL Server 和 PostgreSQL 一起使用。

但是在执行这段代码的过程中:

SqlConnection connect = new SqlConnection();
connect.ConnectionString = connectionString; // <-- here error happens

我收到错误:

------------ System.IO.FileLoadException HResult=0x80131040 Message=无法加载文件或程序集'System.Memory, Version=4.5.5.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51' 或 它的依赖之一。定位程序集的清单定义 与程序集引用不匹配。 (HRESULT 的异常: 0x80131040) Source=Microsoft.Data.SqlClient StackTrace: 在 Microsoft.Data.LocalDBAPI.GetLocalDbInstanceNameFromServerName(字符串 服务器名称)在 Microsoft.Data.SqlClient.SqlConnectionString..ctor(字符串 连接字符串)在 Microsoft.Data.SqlClient.SqlConnectionFactory.CreateConnectionOptions(字符串 connectionString、DbConnectionOptions 前一个)在 Microsoft.Data.ProviderBase.DbConnectionFactory.GetConnectionPoolGroup(DbConnectionPoolKey 键,DbConnectionPoolGroupOptions poolOptions,DbConnectionOptions& 用户连接选项)在 Microsoft.Data.SqlClient.SqlConnection.ConnectionString_Set(DbConnectionPoolKey 键)在 Microsoft.Data.SqlClient.SqlConnection.set_ConnectionString(字符串 值)

内部异常 1: FileLoadException: Could not load file or assembly 'System.Memory, Version=4.0.1.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51' 或其依赖项之一。这 定位程序集的清单定义与程序集不匹配 参考。 (HRESULT 的异常:0x80131040)

在我添加了 Npgsql 7.0.4 Nuget 包后出现。

如何解决?

简化代码:

//Installed Nuget System.Memory (fresh dll: 4.5.5.0)
// using Microsoft.Data.SqlClient
SqlConnection connect = new SqlConnection(connectionString);

和消息:

System.IO.FileLoadException: '无法加载文件或程序集 'System.Memory, Version=4.5.5.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51' 或其依赖项之一。这 定位程序集的清单定义与程序集不匹配 参考。 (HRESULT 的异常:0x80131040)'

winforms npgsql sqlconnection
© www.soinside.com 2019 - 2024. All rights reserved.