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

.NET 8 Minimal API中如何自动生成TypedResults.Stream响应文档?

问题:Minimal API中为PushStreamHttpResult生成Swagger/OpenAPI文档

我在Minimal API应用中配置了如下路由:

app.MapGet("api/test", async Task<Results<PushStreamHttpResult, NotFound>> (bool fail) => {
    if (fail) return TypedResults.NotFound();
    return TypedResults.Stream(stream => WriteToStream(stream), "text/plain");
}).WithSummary("Test Streaming results");

async Task WriteToStream(Stream stream) {
    // do the writing... not needed for sample code
}

我无法为该TypedResults.Stream/PushStreamHttpResult类型在Swagger/OpenAPI界面和Schema中生成合适的文档。不过我可以为其他结果类型实现这一点:

app.MapGet("api/thisworks", async Task<
    Results<
        Ok<ApiResult>,
        BadRequest<ApiResult>,
        NotFound<ApiResult>>> () => { ... }

上述代码会为多种返回类型生成合适的文档,示例如下:
正确的Swagger返回类型文档

请问是否有办法为TypedResults.Stream/PushStreamHttpResult自动实现同样的文档生成效果?


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.01 13:27:13