NSwagSwagger/OpenAPI 工具链

联合创作 · 2023-09-28 10:13

NSwag 是一个 Swagger/OpenAPI 2.0 和 3.0 工具链,用于.NET、.NET Core、Web API、ASP.NET Core、TypeScript(jQuery、AngularJS、Angular 2+、Aurelia、KnockoutJS 等)和其他平台,用 C# 编写。OpenAPI/Swagger 规范使用 JSON 和 JSON Schema 来描述一个 RESTful web API。NSwag 项目提供了从现有的ASP.NET Web API 控制器生成 OpenAPI 规范的工具,以及从这些 OpenAPI 规范生成的客户端代码。

该项目将 Swashbuckle(OpenAPI/Swagger generation)和AutoRest(client generation)的功能结合在一个工具链中(不需要这两个库)。这样就可以避免很多不兼容的情况,并且可以更好地支持OpenAPI规范或JSON Schema没有很好描述的功能(例如继承、枚举和引用处理)。NSwag 项目大量使用NJsonSchema for .NET来处理JSON Schema和生成C#/TypeScript类/接口。

特性:

  • 从 C# ASP.NET(Core) controllers 生成 Swagger 2.0 和 OpenAPI 3.0 规范
  • 通过 ASP.NET (Core)中间件提供规范,可选择使用 Swagger UI或ReDoc
  • 从这些规范中生成C#或TypeScript客户端/代理。
  • 一切都可以通过CLI实现自动化(通过NuGet工具或构建目标分发;或NPM)。
  • CLI通过JSON文件或NSwagStudio Windows UI进行配置
浏览 15
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报