44

C# クラスから JSON スキーマをプログラムで生成する方法はありますか?

http://www.jsonschema.net/を使用して手動でできること

4

4 に答える 4

38

JSON スキーマ v4 の生成をサポートする別のオプションはNJsonSchemaです。

var schema = JsonSchema.FromType<Person>();
var schemaJson = schema.ToJson();

ライブラリはNuGet経由でインストールできます。

NJsonSchema v9.4.3+ の更新:

using NJsonSchema;

var schema = await JsonSchema.FromTypeAsync<Person>();
var schemaJson = schema.ToJson();
于 2015-10-12T12:32:53.837 に答える
0

逆にGoogle検索からここにたどり着いた人
(JSONからC#クラスを生成する)-私はこれらの優れたオンラインツールを使用します:

JSON:
http://json2csharp.com/
(ソース: http://jsonclassgenerator.codeplex.com/ )

XML:
http://xmltocsharp.azurewebsites.net/
(ソース: https://github.com/msyoung/XmlToCSharp )

于 2015-09-06T12:01:37.207 に答える
0

これは、 Newtonsoft.Json.Schema NuGet パッケージを介してJson.NETでサポートされています。使い方の説明は公式ドキュメントにありますが、以下に簡単な例も含めました。

JSchemaGenerator generator = new JSchemaGenerator();
JSchema schema = generator.Generate(typeof(Person));
Console.WriteLine(schema.ToString());
//{
//  "type": "object",
//  "properties": {
//    "Name": {
//      "type": [ "string", "null" ]
//    },
//    "Age": { "type": "integer" }
//  },
//  "required": [ "Name", "Age" ]
//}
于 2021-10-12T13:12:59.730 に答える