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

时间:2017-08-02 16:13:02

标签: asp.net-web-api swagger swashbuckle xml-documentation

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

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

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

这是我的注册行:

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

更新:我做了一些额外的日志记录,虽然IncludeXmlComments的这个lne在启动时成功运行,但当我从服务器请求swagger.json文件时,我得到了{{1}异常。当我使用Kudu工具查看这个目录时,我找不到这个文件。

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

1 个答案:

答案 0 :(得分:13)

问题是,某些XML文件没有进入您的服务器...... 我有一个Azure部署的确切问题,它在我的本地机器上工作正常,但不是在天蓝色

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

Debug

Release