0

使用 Microsoft.Data.SqlClient 创建新的 .net 6 项目时,它工作正常。但是当使用 fitsharp 运行 .net 6 Fitnesse 项目时,我们会收到此错误:

System.PlatformNotSupportedException:此平台不支持 Microsoft.Data.SqlClient

依赖项:

  1. 飞利浦 2022.1.15
  2. Lextm.SharpSnmpLib 12.4.0
  3. Microsoft.Data.SqlClient 4.1.0

我试过添加<CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>到 .csproj

这绕过了一些错误,但PlatformNotSupportedExcpetion仍然存在。

转换为控制台应用程序并从程序运行时。它工作正常。但是在使用fitsharp运行fitnesse时它不起作用

4

1 回答 1

0

目前的解决方法是降级Microsoft.Data.SqlClient2.0.1. 并安装Microsoft.Data.SqlClient.SNI.Runtime v2.0.1nuget包。需要,但这<CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>并没有将 Microsoft.Data dll 复制到构建时的 bin 中。所以这两个dll需要移动到bin:

  1. packages\microsoft.data.sqlclient.sni.runtime\2.0.1\runtimes\win-x64\native\Microsoft.Data.SqlClient.SNI.dll

  2. packages\microsoft.data.sqlclient\2.0.1\runtimes\win\lib\netcoreapp3.1\Microsoft.Data.SqlClient.dll

在这里为 .NET Core 3.1 找到了类似的解决方案:

Github 中 Fitsharp 的问题

Naun,7 月 13 日回答,但 .NET 6 的不同之处在于还要安装Microsoft.Data.SqlClient.SNI.Runtime v2.0.1nuget 包并复制不同版本的 dll

于 2022-02-09T11:43:44.803 回答