每个平台似乎都有数以百万计的选择,但我很难找到一个简单的C#解决方案.我发现的所有东西似乎给了我麻烦:要么他们根本不工作(例如
http://swaggercodegen.azurewebsites.net/),要么只支持2.0(例如
AutoRest和
NSwag).一半的工具甚至不清楚它们支持的版本:-(
我知道official tool,但这需要JDK 7,这对我来说当前不是一个选择.
在绝望中我甚至尝试将swagger规范转换为2.0,但是我试过的转换工具的一半没有用,给出了相互矛盾的建议,或者我无法弄清楚如何使用(我发现自己很快陷入了nodejs. ..这真的是一个勇敢的新世界吗?!带回WSDL ;-)).
解决方法
您可以使用在线swagger codegen创建客户端而无需安装任何内容:
您可以选择POST / gen / clients / {language}并输入这样的正文:
{ "options": {},"swaggerUrl": "http://petstore.swagger.io/v2/swagger.json" }
使用您自己的URL来访问规范.如果需要传递任何选项,可以将它们放在选项哈希中. C#的可用选项列表也可从生成器获得:
https://generator.swagger.io/api/gen/clients/CsharpDotNet2
{ "packageName": { "opt": "packageName","description": "C# package name (convention: Camel.Case).","type": "string","default": "IO.Swagger" },"packageVersion": { "opt": "packageVersion","description": "C# package version.","default": "1.0.0" },"clientPackage": { "opt": "clientPackage","description": "C# client package name (convention: Camel.Case).","default": "IO.Swagger.Client" } }