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

FastEndpoints中Swagger的AddSwaggerGen委托未执行问题求助

FastEndpoints配置Swagger时自定义配置不执行的问题解决

问题原因

  1. FastEndpoints的封装覆盖手动配置:SwaggerDocument()扩展方法内部已经完成了Swashbuckle的AddSwaggerGen服务注册,后续手动调用AddSwaggerGen()时,Swashbuckle会检测到相关服务已注册,直接跳过执行你的DoMagic配置委托。
  2. 错误调用中间件方法:代码中的app.UseSwaggerGen()是无效调用,Swashbuckle并无此中间件方法,属于误用。

解决办法

  • 改用FastEndpoints的配置入口:放弃手动调用AddSwaggerGen(),直接通过SwaggerDocument()的重载传入自定义配置逻辑:
    WebApplicationBuilder builder = ...
    // 将配置委托直接传入SwaggerDocument
    builder.Services.SwaggerDocument(options => DoMagic(options));
    
    WebApplication app = ...
    app.UseSwagger();
    // 若需要Swagger UI,添加此行
    app.UseSwaggerUI();
    
  • 移除无效调用:彻底删除app.UseSwaggerGen(),避免不必要的程序错误。

补充说明

FastEndpoints对Swagger的封装旨在简化配置流程,所有Swagger相关的自定义配置都应通过SwaggerDocument()的参数传入,而非重复调用Swashbuckle原生的AddSwaggerGen()。

内容的提问来源于stack exchange,提问作者Stefan S.

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.20 08:48:13