如何使asp .net core发布时包含xml描述文件?

项目发布后,调试需要使用swagger,但是用asp .net core 生成的项目只有主程序有xml描述文档,其他依赖的dll的xml文档都没携带.并且发布时,主程序的xml文档也没能发布过去,导致页面打开后swagger里一行注释都没有……各路大神支个招呀?小弟感激不尽.

  • 如图是asp .net生成的携带xml的
    图片描述

  • 这是asp .net core 生成的,没有依赖包的xml,TL.Monitor是主程序,能生成xml文档,但是发布时没有携带xml.
    图片描述

  • 这是发布预览,即便修改了代码中swagger的描述,发布也没能携带xml:
    图片描述

阅读 8.5k
4 个回答

这个在生成那里有

新手上路,请多包涵

csproj里加上下面这坨就行了,如果你的xml是自己命名的 记得改一下(TargetName)

<Target Name="PrepublishScript" BeforeTargets="PrepareForPublish">

<ItemGroup>

<DocFile Include="bin\$(Configuration)\$(TargetFramework)\$(RuntimeIdentifier)\$(TargetName).xml" />

</ItemGroup>

<Copy SourceFiles="@(DocFile)" DestinationFolder="$(PublishDir)" SkipUnchangedFiles="false" />

</Target>
新手上路,请多包涵

在相关的 .csproj 文件的 <PropertyGroup> 标签下添加

<GenerateDocumentationFile>true</GenerateDocumentationFile>

属性即可

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进