WPF/Winform一个工程同时兼容.net core 和 framework
记录同一个工程多目标编译,并且发布到 nuget
1.新建 DotNet Standard2.0 类库工程
2.修改.csproj 工程文件
- 右键项目,编辑工程文件
<Project Sdk="Microsoft.NET.Sdk.WindowsDesktop">
<PropertyGroup>
<TargetFrameworks>net47;netcoreapp3.0</TargetFrameworks>
<UseWPF>true</UseWPF>
<UseWindowsForms>true</UseWindowsForms>
</PropertyGroup>
</Project>
如果入口工程提示编译报错,也按上面的改
3.VS 右键发布 nuget 包
可以直接通过 vs 右键发布 nuget 包,但是只能支持一种目标。要么是 framewok,要么是 core。
4.使用命令行发布多目标 nuget 包
- 打开 nuget 命令控制台
- 输入命令
dotnet pack -o ../LocalNuget/Packages
更多参数见官网: https://docs.microsoft.com/en-us/dotnet/core/tools/dotnet-pack
5.完事
这是我今天自己总结出来的,感觉很有用记录一下。