JSON から C#
System.Text.Json または Newtonsoft.Json 用の C# クラスや record を生成
JSON を貼り付けるか例を読み込むと、C# のコードを生成します。
JSON to C# が生成するもの
JSON to C# は API レスポンスや任意の JSON サンプルを、ファイルスコープの名前空間を持つ 1 つのファイル内の C# の型に変換します。クラスモードは { get; set; } プロパティを、Record モードは位置指定 record を出力し、生成されたプロパティには [property: ...] で属性を付けます。System.Text.Json は [JsonPropertyName("key")]、Newtonsoft.Json は [JsonProperty("key")] を使います。C# では許可されないため、プロパティに外側の型と同じ名前が付くことはありません。
使い方
- 1.JSON を貼り付けるか、.json ファイルをアップロードまたはドロップするか、例を読み込みます。
- 2.ルート型名と、必要に応じて Company.Project.Models のような名前空間を設定します。
- 3.型の形式、プロパティの命名、null 許容参照型を選びます。
- 4.シリアライザーと属性の方針を選んでから、コードをコピーするか <Root>.cs をダウンロードします。
型の推論方法
- •最初の要素だけでなく配列のすべての要素を確認し、同じ配列内のオブジェクトは統合します。
- •一部のオブジェクトにないキーは省略可能、ときどき null になるキーは null 許容になります。この 2 つは区別して扱います。
- •同じ位置にある 1 と 2.5 は小数に拡張され、それ以外の混在は報告されます。
- •空の配列や常に null の値には型の手がかりがないため、汎用的な型を使用し、その理由を注意で説明します。
- •型の対応:string → string、整数 → 範囲に応じて int、long、ulong、decimal、小数 → double、真偽値 → bool、配列 → List<T>、オブジェクト → class または record、欠けているか null → T?、不明または混在 → object。
- •required メンバーには C# 11 / .NET 7 以降が必要です。その場合、System.Text.Json は required のキーが欠けた JSON を拒否します。
制限とプライバシー
サンプルはある時点でのデータの形を示すだけで、API の完全な仕様ではありません。コードを使う前に、省略可能なフィールド、汎用的な型、数値の幅を確認してください。入力は 5 MB、入れ子 256 階層までです。2 MB 以上の場合は「生成」ボタンを押すまで生成されません。処理はすべてブラウザー内で行われ、JSON がアップロードされることはありません。System.Text.Json では、object 型のプロパティは逆シリアル化後に JsonElement を保持します。
