Swashbuckle + XmlComments在本地工作,但在服务器上失败招摇指数

问题描述:

我有一个webapi项目,我正在使用swashbuckle框架来清除api文档。Swashbuckle + XmlComments在本地工作,但在服务器上失败招摇指数

我已经按照指示使用我的控制器和DTO构建文档xml文件,并且它在本地很好地工作。

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

这里是我的注册行:

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

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

TL; DR:为什么这个文件在本地显示正常,但是当我使用Kudu或Octopus块组件来部署到Azure时,该文件不在那里?

的问题是,不知何故XML文件是不是让你的服务器...... 我有这个确切的问题与Azure的部署它在我的本地机器上运行良好,但不是在蔚蓝

...它是因为我错过了XML文档在发布配置

Debug

Release

+0

在这里,在Azure中正在我的测试项目:http://swashbuckletest.azurewebsites.net/swagger/ui/index – HelderSepu

+0

这正是问题所在。谢谢! –

+0

@NathanTregillus我真棒! :)感谢+1 – HelderSepu