sah*_*har 14 sqlclient .net-standard-2.0
我有一个.NET Standard 2.0类库项目,安装了Nuget包System.Data.SqlClient版本4.4.0和一个Windows Form .NET Framework 4.7项目,该项目引用了该类库.
安装Nuget Package并构建解决方案是成功的.但在运行时,每次代码到达一个方法,其中包含SqlClient程序集中的任何东西(例如来自SqlConnection的实例),它会收到此错误:
无法加载文件或程序集'System.Data.SqlClient,Version = 4.2.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a'或其依赖项之一.该系统找不到指定的文件.
考虑到这个问题,我认为问题也出现在Nuget包的最后一个主要版本中.
编辑
我下载了Nuget软件包并解压缩,并从\ ref \netstandard2.0文件夹中手动复制了System.DataSqlClient.dll在我的Windows窗体项目的\ bin\Debug文件夹中,现在它可以工作了.Microsoft.Win32.Registry包也发生了确切的情况.所以我几乎确信这是我的错,而且我正在以错误的方式做某事,但是当我使用System.Drawing.Primitive Package进行测试时,它完美无缺,无需复制dll.现在我真的很困惑.
Bog*_*n K 12
我猜你可能已经把它弄清楚了,但希望它能帮助别人 - 浪费一些时间.
因此,为了使一切正常工作,您需要在引用.NET标准库的Windows窗体项目中引用System.Data.SqlClient从那时起,一切都应该像魅力一样工作
正如您已经提到的,System.Data.SqlClient.dll不在输出目录中.听起来像.NET标准库没有抓住自己依赖的库二进制文件..NET Standard引用中没有类似"复制本地"选项,所以我也没有看到任何检查或设置此行为的方法
归档时间: |
|
查看次数: |
7293 次 |
最近记录: |