MSBUILD使用XML文档文件生成项目

MSBUILD使用XML文档文件生成项目,msbuild,Msbuild,这应该很容易,但我不能让它工作 我有一个web项目,它引用了我的解决方案中的另一个项目(我们称之为Project1)。这两个项目都设置为创建XML文档文件 当我右键单击web项目并在Visual studio中生成时,我的web/bin文件夹包含web项目和项目1的XML文档文件 我希望在MSBUILD中实现完全相同的行为,因此,在生成时,我会在bin文件夹中获取两个XML文件,但我无法让它发挥作用-所发生的情况是创建了web项目的XML文件,但没有创建project1的XML文件 我试过了

这应该很容易,但我不能让它工作

我有一个web项目,它引用了我的解决方案中的另一个项目(我们称之为Project1)。这两个项目都设置为创建XML文档文件

当我右键单击web项目并在Visual studio中生成时,我的
web/bin
文件夹包含web项目和项目1的XML文档文件

我希望在MSBUILD中实现完全相同的行为,因此,在生成时,我会在bin文件夹中获取两个XML文件,但我无法让它发挥作用-所发生的情况是创建了web项目的XML文件,但没有创建project1的XML文件

我试过了

  • MSBUILD
    解决方案
  • MSBUILD
    web项目
  • /p:GenerateDocumentation=true
    不起作用(在解决方案或web项目上)
救命啊

Gah。我明白了

我指定的是
配置
/p:Configuration=Release
),但不是平台(
/p:platform=“Any CPU”
)。因此,它选择了
x64平台
,这是一个我没有选择构建XML文档的平台


TLD:确保您指定了解决方案的配置和平台,然后将创建XML文档

在我这方面,XML是在VS中本地构建时生成的,但没有在TFS/Azure DevOps上使用MSBuild任务

“神奇”部分用于指定
p:/DocumentationFile
参数。 在我的工作场景中是:
/p:DocumentationFile=“$(ApplicationName).xml”


因此,该文件将与project DLL一起输出到输出目录。

“不起作用”不是很好的描述-您没有得到XML吗?或者只是一个项目的XML文件,而不是另一个?“还有别的吗?”马特·罗伯茨说,它在我的机器上工作。文件->新web应用程序跟随我的msbuild生成xml。检查调试版本和发布版本的文档输出路径。默认情况下,Msbuild执行调试生成,因此我猜您的调试输出路径不是bin文件夹。可能是错的:)干杯@CosminOnea-你走的是对的-我在下面添加了我自己的答案!这个答案是不完整的。您需要提供p:GenerateDocumentation和可选的p:DocumentationFile