[英]Generating C# model classes from JSON Schema for Sabre REST API
我們正在實施 Sabre REST API 以在我們的 C# ASP.NET MVC 應用程序中訪問空氣、酒店和車輛內容。
到目前為止,我們在從 Sabre Dev Studio 提供的 JSON Schema 文檔生成 C# 模型類時遇到了一些問題。 我們使用 Quicktype CLI ( https://quicktype.io/ ) 來生成模型類。
到目前為止我們已經遵循的步驟:
OTA_AirLowFareSearchRQ.jsonschema
和OTA_AirLowFareSearchRS.jsonschema
文件下載到一個文件夾中。quicktype -s schema OTA_AirLowFareSearchRQ.jsonschema OTA_AirLowFareSearchRS.jsonschema -o SabreAirLowFareSearch.cs
不幸的是,它失敗並顯示消息“錯誤:嘗試創建一個空聯合 - 您的架構中是否有不可能的類型?”。 這似乎與OTA_AirLowFareSearchRQ.jsonschema
隔離。
是否有工具或最佳實踐可以從 JSON Schema 文檔成功生成 C# 模型類?
我已經導入了 NuGet 包:
並完成了下面的代碼:
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();
}
}
}
它生成了此鏈接上附加的代碼: https : //file.io/LlRNsf (我不確定它會在那里持續多久)
您需要為響應執行另一個調用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.