web-dev-qa-db-ja.com

C#クラスからJSONスキーマを生成する

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

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

26
Ravi Gupta

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

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

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

NJsonSchema v9.4.3 +のアップデート:

using NJsonSchema;

var schema = await JsonSchema4.FromTypeAsync<Person>();
var schemaJson = schema.ToJson();
19
Rico Suter
JsonSchemaGenerator js = new JsonSchemaGenerator();
var schema = js.Generate(typeof(Person));
schema.Title = typeof(Person).Name;
using (StreamWriter fileWriter = File.CreateText(filePath))
{
      fileWriter.WriteLine(schema);
}
1
Daniel

Googleから逆に検索してここに着く人のために
(JSONからC#クラスを生成します)-これらのすばらしいオンラインツールを使用します。

JSON:
http://json2csharp.com/
(出典: http://jsonclassgenerator.codeplex.com/

XML:
http://xmltocsharp.azurewebsites.net/
(出典: https://github.com/msyoung/XmlToCSharp

1
Stefan Steiger