如何使用.net核心Web应用程序发布XML文档?

时间:2017-03-20 16:35:25

标签: c# .net-core

在csproj文件中,我通过以下标记启用了XML文档生成:

  <PropertyGroup>
    <DocumentationFile>bin\xml\Project.Api.xml</DocumentationFile>
    <NoWarn>1701;1702;1705;1591;1573</NoWarn>
  </PropertyGroup>

这可以正常构建xml文档。现在我需要将这个XML文件与应用程序一起分发(对于Swagger支持等)。所以我添加了以下内容:

  <ItemGroup>
    <None Update="bin\xml\Project.Api.xml">
      <CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>      
    </None>
  </ItemGroup>

但是,当我发布到文件夹(或azure)时,XML文档无处可寻。

我错过了什么?

1 个答案:

答案 0 :(得分:3)

以下内容适用于您的方案(至少在发布到文件夹时):

  <!-- Run before PrepareForPublish target -->
  <Target Name="CopyDocumentationFile" BeforeTargets="PrepareForPublish">
    <ItemGroup>      
      <DocFile Include="$(DocumentationFile)" />
    </ItemGroup>
    <!--just copy doc file to target location -->
    <Copy SourceFiles="@(DocFile)" DestinationFolder="$(PublishDir)" SkipUnchangedFiles="true" />
  </Target>

Here您可以找到有关如何将自定义文件包含到发布输出中的文档。他们使用更复杂的方式,但只是更多一点。