【问题标题】:how to create a package in swagger code gen tool in addition to the api and model package除了 api 和 model 包之外,如何在 swagger 代码生成工具中创建一个包
【发布时间】:2015-09-23 18:31:00
【问题描述】:

我正在学习使用 swagger code gen 从 swagger.json 文件中生成一堆 csharp 文件。

在 CSharpClientCodeGen.class 中,我注意到 apiPackage 和 modelPackage 的变量会在其中生成 Api 和 Model cs 文件。我想创建一个类似于 apiPackage 和 modelPackage 的新包。

我尝试添加以下代码

public class csharpcodegen extends CSharpClientCodeGen
{
protected String newPackage="IO.Swagger.New";

}

然后构建客户端代码,但我没有看到新的包文件夹。

不知道该怎么做。如果您能向我指出如何执行此操作的资源,那就太好了。

谢谢

【问题讨论】:

    标签: c# rest swagger swagger-2.0 swagger-codegen


    【解决方案1】:

    如果要自定义包名,可以将配置文件(例如 config.json)传递给swagger-codegen。以下是可用于 C# 代码生成器的配置选项的完整列表:

    swagger-codegen|master⚡ ⇒ java -jar modules/swagger-codegen-cli/target/swagger-codegen-cli.jar config-help -l csharp
    
    CONFIG OPTIONS
        packageName
            C# package name (convention: Camel.Case), default: IO.Swagger
    
        packageVersion
            C# package version, default: 1.0.0
    

    例如,要生成 C# SDK,请准备如下配置文件

    {
      "packageName": "Com.RestUnited",
    }
    

    然后运行以下命令:

      java -jar modules/swagger-codegen-cli/target/swagger-codegen-cli.jar generate \
      -i /var/tmp/swagger_spec.yaml \
      -l csharp \
      -o /var/tmp/csharp/test/ \
      -c /var/tmp/csharp.json
    

    要请求自定义 C# SDK 的新选项,请通过 Github page提交

    【讨论】:

    • 您从哪里获得语言选项?我没有在项目文档的任何地方看到它。
    • 是的,我想这会有所帮助。如果他们在命令行帮助以外的地方列出支持的客户端语言和框架,那就太好了。我不得不深入研究他们的 repo 以发现他们使用 RestSharp 框架生成 csharp。
    猜你喜欢
    • 2020-02-17
    • 2019-08-28
    • 2018-04-28
    • 1970-01-01
    • 1970-01-01
    • 2013-02-01
    • 2016-09-17
    • 2010-09-20
    • 2014-08-03
    相关资源
    最近更新 更多