从beta-3更新的项目不会在构建

时间:2015-05-17 16:47:17

标签: asp.net-core visual-studio-2015

将项目从.kproj格式升级为.xproj格式后,我的项目不再生成构建输出。

  • 当我检查项目属性对话框时,未选中“在构建时生成输出”复选框。选中它,保存属性并重新打开项目属性会导致再次取消设置复选框。
  • 当我打开.xproj文件时,我发现它包含预期的设置:
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
  <ProduceOutputsOnBuild>True</ProduceOutputsOnBuild>
</PropertyGroup>

1 个答案:

答案 0 :(得分:1)

事实证明,在升级项目时,某些导入往往会以错误的顺序排列。在我升级的.xproj底部,我发现了以下几行:

<Import Project="$(VSToolsPath)\DNX\Microsoft.DNX.Props" />
<Import Project="$(VSToolsPath)\DNX\Microsoft.DNX.targets" />

当我将它与一个新的.xproj文件进行比较时,它们如下:

<!-- after the first PropertyGroup, but before the "Globals" -->
<Import Project="$(VSToolsPath)\DNX\Microsoft.DNX.Props" Condition="'$(VSToolsPath)' != ''" />
<!-- at the end, as before -->
<Import Project="$(VSToolsPath)\DNX\Microsoft.DNX.targets" Condition="'$(VSToolsPath)' != ''" />

Microsoft.DNX.Props引用移到包含PropertyGroup的{​​{1}}上方修复了该问题。 (由于ProduceOutputsOnBuild设置在第一个$(VSToolsPath)中,因此该条件无效。)