我成功地在本地工作了
https://codesandbox.io/s/dynamic-fields-with-class-z65gn
但是它在仅具有VS 2017 BuiltTools的CI服务器上失败。总的来说,它感觉很脆弱而且很脆弱。
但是,我仍然要使用这些目标,因为它们很棒。有使用它们的健壮方法吗?除了一个自定义任务外,它们似乎不依赖于Sdk领域中的其他任何东西。
编辑1
我们的构建服务器确实具有VS 2017构建工具。但是开发人员都有VS 2017和VS2015。如果必须修复Silverlight错误,则需要后者。是的,我们还有Silverlight。
P.S。
请不要建议迁移到.NET Core。我将迁移到Sdk风格的项目,但是还有另一个问题-Is it possible to write VS extensions using the SDK style projects?
答案 0 :(得分:1)
我实际上为此创建了一个MSBuild Sdk,因此可以将相同的逻辑用于经典项目(经典asp.net,.net框架WPF应用程序等):https://github.com/dasMulli/AssemblyInfoGenerationSdk。也许这就是您所需要的。如果它不适合您,请打开问题。
这是通过从.NET SDK复制一些(MIT开源)代码并将其打包到MSBuild SDK中来实现的。