zga*_*abi 4 .net package-managers visual-studio nuget .net-standard
我正在使用一个NuGet软件包,其中包含2个目标框架的程序集:net45和netstandard1.5
我的项目针对net471(因此与netstandard1.5兼容)。当我添加软件包时,它将从net45文件夹复制dll。如何强制NuGet使用标准文件夹中的dll?
net45版本的问题在于它需要较旧版本的依赖程序包,标准dll没有依赖程序。
如何从Nuget包中选择目标框架
根据官方文档Matching Assembly版本和项目中的目标框架:
当NuGet安装具有多个程序集版本的软件包时,它将尝试使程序集的框架名称与项目的目标框架匹配。
因此,正如Matt所说:“ NuGet将使用最接近的程序集。将赢得更具体的目标框架。 ”,NuGet会将.net框架程序集安装到您的.net框架项目中。
要解决此问题,您可以用马特的建议,直接引用.NET标准组件自己的项目,也可以手动下载NuGet包,将其设置为当地的饲料,与NuGet包Explorer中打开它,删除该文件夹net45下的lib文件夹,从本地供稿安装该软件包,然后nuget将使用标准文件夹中的dll。
希望这可以帮助。
| 归档时间: |
|
| 查看次数: |
5334 次 |
| 最近记录: |