2017-04-21 58 views
0

我想要创建一个Nuget包与多个程序集都是.NET 4.5和.NET标准。该软件包的一些用户仍然在VS2012上,所以我不能只制作.NET标准软件包。从相同的项目文件创建多平台的Nuget

该组件仍在积极开发中,也由VS2012用户使用。

docs for this situation建议保留当前的CSPROJ文件并创建新的.NET标准文件。 但我相信在两个版本的CSPROJ文件中保持项目设置的最新状态将会带来麻烦。例如。如果在添加交叉项目引用时,修改后构建任务等等。

我看到像Json.NET这样的项目为每个平台使用一个CSPROJ文件,但我真的认为这应该以更好的方式解决。

我更喜欢它,如果我能够创建一个脚本,可以使用msbuild首先为.NET 4.5和.NET Standard建立项目,但似乎脚本将不得不修复CSPROJ文件'XML在构建时更改目标框架。如果可能的话,我也想避免这种情况。

还有哪些其他方法可以保留一组CSPROJ文件?

回答

0

在PackageReference世界(也就是说,如果你正在创建NETStandard库),你可以简单地把在的csproj文件中的以下内容:

netstandard1.4 **,** net45 ...

这对你有帮助吗?

+0

我知道新的“SDK风格”CSPROJ文件可以有一个元素,我可以指定多个目标框架。但是这些CSPROJ文件只能被VS2017读取,所以在我们将所有人员和项目从VS2012移除之前,这些文件不会帮助我。 – RasmusW

相关问题