如何为.net core 3.1和.netstandard2.0进行装配?

谁能告诉我什么是正确的方法?这是我的项目文件

  <PropertyGroup> 
    <TargetFramework>netstandard2.1</TargetFramework>
    <TargetFramework>netcoreapp3.1</TargetFramework>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="microsoft.CSharp" Version="4.7.0" />
  </ItemGroup>

这是nuspec文件的一部分

   <dependencies>
      <group targetFramework=".NETStandard2.1">
        <dependency id="microsoft.CSharp" version="4.7.0" />
      </group>
      <group targetFramework=".NetCore,Version=3.1">
        <dependency id="microsoft.CSharp" version="4.7.0" />
      </group>
    </dependencies>
    <packageTypes>
      <packageType name="Dependency" />
    </packageTypes>  
  </metadata>
  <files>
    <file src="bin\$configuration$\**\*.*" exclude="**\*.pdb" target=".\lib"/>
  </files>

使用Cake构建程序集时,我们指定Win-x64作为运行时。这是正确的吗?

生成的nupkg中的文件/文件夹结构为

\lib
   \netcoreapp3.1
      \any
      \win
      \win-x64
   \netstandard2.0
      \win10-x64

工具:VS2019,NuGet v5.4.0

然后,当我尝试将其安装在.net core 3.1项目中时,我感到恐惧:

Error   NU1202  Package JDM.Common.Json 0.2.2 is not compatible with netcoreapp3.1 (.NETCoreApp,Version=v3.1). Package JDM.Common.Json 0.2.2 does not support any target frameworks. ... 

我必须承认,无法完成这项工作使我发疯。

TIA

fkpy123 回答:如何为.net core 3.1和.netstandard2.0进行装配?

无需为此创建nuspec文件。您可以使用复数TargetFrameworks并指定多个目标框架:

  <PropertyGroup> 
    <TargetFramework>netstandard2.1;netcoreapp3.1</TargetFramework>
  </PropertyGroup>

然后,您可以使用dotnet pack

创建.nupk文件。
本文链接:https://www.f2er.com/2590179.html

大家都在问