我有一个.NET Standard 2.0类库项目,安装了Nuget包System.Data.SqlClient版本为4.4.0,并有一个Windows窗体.NET Framework 4.7项目引用该类库。
安装Nuget包并构建解决方案成功。但运行时每次代码执行到任何使用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包进行测试时,它可以完美地工作,无需复制dll。现在我真的很困惑。
x
,而一个.NET Framework项目依赖于.NET Standard项目,则.NET Framework项目也依赖于x
并自动安装它? - Jamie Twells