如果我使用VS2017创建一个.NET Core或.NET Standard项目,并打开该项目的属性,则会出现一个“包”选项卡,其中包括一个复选框,该复选框标记为“在生成时生成NuGet包”。但是,如果它是.NET Framework项目,则没有这样的选项卡。
我在这里错过了什么吗?或者对于框架项目,我是否必须阅读整个手册nuspec / pack / blah rigamarole?
答案 0 :(得分:1)
使用VS2017制作框架(不是核心,不是标准)NuGet软件包
这是因为.NET Framework项目仍使用旧项目类型(非SDK),因此“打包”选项卡仅受新项目类型(SDK)支持。
如果您想对库.NET Framework项目使用“打包”标签,则可以将项目从旧的.csproj转换为新的.csproj ,(右键单击您的项目->卸载项目- >编辑.csproj。将csproj的内容替换为以下内容:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net46</TargetFramework>
</PropertyGroup>
</Project>
注意:需要删除属性中的AssemblyInfo.cs
文件。
有关将旧的.csproj转换为新的.csproj的更多信息,请参见Old csproj to new csproj: Visual Studio 2017 upgrade guide。
然后,您将获得.NET Framework项目的程序包选项卡:
希望这会有所帮助。