Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/rest/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从SabreRESTAPI的JSON模式生成C#模型类_C#_Rest_Sabre - Fatal编程技术网

从SabreRESTAPI的JSON模式生成C#模型类

从SabreRESTAPI的JSON模式生成C#模型类,c#,rest,sabre,C#,Rest,Sabre,我们正在实施Sabre REST API,以访问C#ASP.NET MVC应用程序中的空中、酒店和车辆内容 到目前为止,我们在从Sabre Dev Studio提供的JSON模式文档生成C#model类时遇到了一些问题。我们正在使用Quicktype CLI()生成模型类 到目前为止,我们采取了以下步骤: 下载了OTA_airlowfaresearchq.jsonschema和OTA_airlowfaresearch.jsonschema文件到文件夹中 使用PowerShell导航到文件夹并调用

我们正在实施Sabre REST API,以访问C#ASP.NET MVC应用程序中的空中、酒店和车辆内容

到目前为止,我们在从Sabre Dev Studio提供的JSON模式文档生成C#model类时遇到了一些问题。我们正在使用Quicktype CLI()生成模型类

到目前为止,我们采取了以下步骤:

  • 下载了
    OTA_airlowfaresearchq.jsonschema
    OTA_airlowfaresearch.jsonschema
    文件到文件夹中
  • 使用PowerShell导航到文件夹并调用
    quicktype-s模式OTA_AirLowFareSearchRQ.jsonschema OTA_AirLowFareSearchRS.jsonschema-o SabreAirLowFareSearch.cs
  • 不幸的是,它失败了,并显示消息“错误:尝试创建一个空联合-您的模式中是否有不可能的类型?”。这似乎与OTA_AirLowFareSearchRQ.jsonschema隔离


    有没有工具或最佳实践可以从JSON模式文档成功生成C#模型类?

    我已经导入了NuGet包:

    • NJsonSchema
    • NJsonSchema.CodeGeneration
    • NJsonSchema.CodeGeneration.CSharp
    并完成以下代码:

    using System;
    using System.Threading.Tasks;
    using NJsonSchema;
    using NJsonSchema.CodeGeneration.CSharp;
    
    namespace RunningTestings
    {
        class Program
        {
            static void Main(string[] args)
            {
                CreateClassfromJsonSchema(@"http://files.developer.sabre.com/doc/providerdoc/STPS/bfm/v410/OTA_AirLowFareSearchRQ.jsonschema").Wait();
            }
    
            public static async Task CreateClassfromJsonSchema(string url)
            {
                JsonSchema jsonSchema = await JsonSchema.FromUrlAsync(url);
                CSharpGenerator generator = new CSharpGenerator(jsonSchema);
                string file = generator.GenerateFile();
            }
        }
    }
    
    它生成了附加在这个链接上的代码:(我不确定它会在那里持续多久)


    您需要执行另一个呼叫以获得响应。

    太好了,这正是我要寻找的@Wisdoom。