Swashbuckle + XmlComments 在本地工作,但在服务器上无法生成 swagger

Swashbuckle + XmlComments work locally, but fail swagger generation on server

我有一个 webapi 项目,我正在利用 swashbuckle 框架清除 api 文档。

我已按照说明使用我的控制器和 DTO 构建文档 xml 文件,并且在本地运行良好。

但是生成swagger文档时,抛出500错误。我已经确认如果我删除我的 xml 注册行,就会生成 swagger 文档并成功返回。

这是我的注册行:

GlobalConfiguration.Configuration.EnableSwagger(c =>
                    { 
...
    c.IncludeXmlComments($"{System.AppDomain.CurrentDomain.BaseDirectory}bin\Company.MyApp.xml");
...

更新: 我做了一些额外的日志记录,虽然这个用于 IncludeXmlComments 的 lne 在启动时成功运行,但当我从服务器请求 swagger.json 文件时,我我收到 System.IO.FileNotFoundException: Could not find file 'D:\home\site\wwwroot\bin\Monetary.Scheduling.xml' 异常。当我使用Kudu工具查看这个目录时,我找不到这个文件。

TL;DR: 为什么这个文件在本地显示正常,但是当我使用 Kudu 或 Octopus nugget 包部署到 Azure 时,这个文件不存在?

问题是 XML 文件没有发送到您的服务器... 我在 Azure 部署中遇到了这个确切的问题,它在我的本地机器上运行良好,但在 Azure 中却没有

...这是因为我在发布配置中缺少 XML 文档