微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

从 .NET 4.6.2 应用程序安装多目标 Nuget 的 .NET Standard 版本?

如何解决从 .NET 4.6.2 应用程序安装多目标 Nuget 的 .NET Standard 版本?

是否可以从 .NET 4.6.2 应用程序中选择多目标 Nuget 的 .NET Standard 版本安装?

我有一个 .NET 4.6.2 应用程序,它使用为 .NETFramework 4.6.2 和 .NETStandard 2.0 构建的 Nuget 包

查看 .csproj 项目文件时,我可以看到:

<Reference Include="CompanyAcme.TheNugetPackage.Client,Version=2.0.0.0,Culture=neutral,processorArchitecture=MSIL">
  <HintPath>..\packages\TheNugetPackage.Client.2.1.4\lib\net462\CompanyAcme.TheNugetPackage.Client.dll</HintPath>
</Reference>

这让我觉得我的 .NET 4.6.2 应用程序使用的是 Nuget 包的 .NET 4.6.2 版本。

解决方法

你可以用这个肮脏的黑客来做,但我在做之前肯定会三思

<PackageReference Include="Prism.Core" ExcludeAssets="Compile" GeneratePathProperty="true"> <Version>7.1.0.431</Version> </PackageReference>
<Reference Include="Prism"> <HintPath>$(PkgPrism_Core)lib\netstandard2.0\Prism.dll</HintPath> </Reference> 

来自https://duanenewman.net/blog/post/a-better-way-to-override-references-with-packagereference/

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。