You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Swashbuckle.AspNetCore.Cli无法找到XML文件问题咨询

Swashbuckle CLI找不到XML文件问题的分析与解决

你遇到的这个System.IO.FileNotFoundException确实是Swashbuckle.AspNetCore.Cli 5.0.0-rc2版本的一个已知问题——这个版本的CLI工具在执行dotnet swagger tofile命令时,没有正确从项目的输出目录读取XML注释文件,反而默认去CLI自身的NuGet安装目录下查找,这就是为什么你手动复制XML文件到指定路径后能正常运行,移除后又复现的原因。

两种可行的解决方案

1. 直接在命令中指定XML文件路径

不用手动复制文件,执行命令时加上--xml参数明确指向项目生成的XML文件位置就行:

dotnet swagger "tofile" --output "swagger.json" --xml ".\bin\Debug\netcoreapp2.1\SwaggerTest.Api.xml" ".\bin\Debug\netcoreapp2.1\SwaggerTest.Api.dll" v1

2. 升级CLI工具版本到与主包一致

你项目里引用的Swashbuckle.AspNetCore和Swashbuckle.AspNetCore.Annotations已经是5.0.0-rc4,但CLI工具还停留在5.0.0-rc2,版本不一致也容易引发这类路径匹配问题。把Swashbuckle.AspNetCore.Cli也升级到5.0.0-rc4后,这个XML文件查找的bug已经被修复,直接执行你原来的命令就能正常生成swagger.json了。

小提示

尽量保持Swashbuckle相关包的版本一致,能避免很多版本兼容导致的奇怪问题哦。

内容的提问来源于stack exchange,提问作者Rogier

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.14 08:17:25