Fio*_*onn 18 asp.net-web-api swagger typescript asp.net-core
我正在寻找一种从ASP.NET核心Web应用程序(目前使用Visual Studio 2017RC和webpack)自动生成TypesScript客户端代码的方法.
是否有任何现有工具可以在visual studio或webpack的构建管道中生成TypeScript客户端?我试图使用swagger中间件,然后从swagger URL生成到客户端,但我不确定中间的swagger生成是否适合这项工作.此外,与构建工具的断开连接并不理想.
小智 17
无论NSwag和Swashbuckle /招摇,代码生成是真棒.
打字机是另一个很棒的选择.
那么,我将采取以下决定:
需要使用命令行生成完整的客户端代码,您可以将其作为构建或发布步骤添加到Swagger Code Gen中
需要使用生成的Swagger Spec或Generated Code来添加自定义 - 去NSwag
Wil*_*eng 13
您可以将Swashbuckle添加到ASP.NET Core webapp,然后生成Swagger/OpenAPI规范.
使用Swagger/OpenAPI规范,您可以使用Swagger Codegen不仅生成TypeScript API客户端(Node,Angular,Angular2,Fetch),还可以生成C#,Java,JS,Swift等API客户端以及API文档.
尝试Swagger Codegen的最简单方法是通过导入规范来使用https://editor.swagger.io,然后选择要生成的目标API客户端/服务器.(https://editor.swagger.io利用https://generator.swagger.io生成代码,generator.swagger.io由Swagger Codegen提供支持)
Swagger Codegen还可以在C#Nancyfx或ASP.NET核心中生成服务器存根,因此您可以考虑使用https://editor.swagger.io编写规范,然后生成API客户端和服务器存根,从而遵循契约优先方法.
更新:2018年5月,Swagger Codegen的大约50名顶级贡献者和模板创建者决定使用Swagger Codegen来维护一个名为OpenAPI Generator的社区驱动版本.有关更多信息,请参阅问答.
另一个选项是NSwag,它可以从这个Swagger规范(适用于Angular,AngularJS,Fetch等)的ASP.NET(Core)控制器和TypeScript客户端生成Swagger规范.集成非常简单,它支持许多高级功能(继承,命名枚举,代码扩展等).
使用NSwagStudio UI,开始非常简单,然后您可以使用NPM包自动执行所有操作(即在cmd行中运行配置文件).
我是该项目的作者之一.
如果您需要生成 DTO 和 API 客户端,那么您的选择是
如果您只需要 DTO,那么我会考虑
有关这些工具的更多信息,请参阅这篇文章 -将 C# 与 TypeScript 结合的 6 种以上方法。
归档时间: |
|
查看次数: |
10177 次 |
最近记录: |