SuperAPI AI 工具集

dotnet-openapi

编程与开发

查看项目

更新于 10-16 07:23

技能介绍

用途:为 ASP.NET Core 项目生成与定制 OpenAPI 文档。首选 Microsoft.AspNetCore.OpenApi(.NET 9+ 默认模板内置),Swashbuckle 已不再积极维护,NSwag 适合客户端生成与高级场景。

主要能力:AddOpenApi/MapOpenApi 基础接入;多文档配置(按版本或功能分组);文档转换器 IOpenApiDocumentTransformer、操作转换器 IOpenApiOperationTransformer、架构转换器 AddSchemaTransformer;端点元数据丰富(WithName/WithSummary/WithDescription/WithTags/Produces);Swashbuckle 过滤器到转换器的迁移映射;NSwag 文档与 C#/TypeScript 客户端生成;.NET 10 支持 OpenAPI 3.1 与 JSON Schema draft 2020-12。

用法要点:builder.Services.AddOpenApi(); app.MapOpenApi(); 默认提供 /openapi/v1.json。多文档用 AddOpenApi("v1", ...) 与 AddOpenApi("v2", ...)。MapOpenApi 只输出原始 JSON,需另配 Scalar 或独立 Swagger UI。NSwag 客户端生成示例:dotnet tool install --global NSwag.ConsoleCore,再执行 nswag openapi2csclient /input:... /output:... /namespace:... /generateClientInterfaces:true。

限制与注意:包版本须与项目目标框架主版本一致,勿混用 Swashbuckle 与内置 OpenAPI;Swashbuckle 未正式弃用但不再积极维护,新项目建议用内置方案;OpenAPI 3.1 需 .NET 10。最小 API 端点模式、API 版本策略、认证授权不在本技能范围内。具体收费、平台与效果资料暂未提供。