如何从 OpenAPI 3.0 模式生成 ASP.NET Core 2 控制器?

How to generate ASP.NET Core 2 controllers from OpenAPI 3.0 schema?

我有一个 OpenAPI 3.0 架构 YAML 文档,它定义了一些 API 具有所有必需参数和响应的端点。

现在,我想生成一些样板服务器端代码:控制器及其方法。我的 API 将使用 ASP.NET Core 2 编写。那么,是否可以使用某种生成器或者我应该手动生成?

P.S。我知道我可以生成客户端代码,但我现在不需要它...

请尝试 OpenAPI Generator,它是 Swagger Codegen 的社区驱动版本,同时支持 OpenAPI 规范 v2、v3。

有关我们(顶级贡献者)为何分叉它的更多信息,请参阅 Q&A

如果您已经 docker 安装,您可以使用以下命令轻松尝试

docker run --rm -v ${PWD}:/local openapitools/openapi-generator-cli generate \
    -i https://raw.githubusercontent.com/openapitools/openapi-generator/master/modules/openapi-generator/src/test/resources/3_0/petstore.yaml \
    -g aspnetcore \
    -o /local/out/aspnetcore

如有任何问题或反馈,请通过https://github.com/OpenAPITools/openapi-generator/issues/new

开工单

我认为存在一些用于生成服务器端代码的 NSwag 工具。

来源:https://docs.microsoft.com/en-us/aspnet/core/tutorials/getting-started-with-nswag?view=aspnetcore-5.0&tabs=visual-studio

NSwagStudio 工具也有控制器生成选项