のスキーマをJson.NETを作成します。私はこのようなNewtonSoft
からJson.NET
でJSONをデシリアライズ今の私はクラス<code>Letter</code>持っている辞書
{
"A":
{
"p1": "",
"p2": "",
"l1": ["", "", ..., ""],
"l2": ["", "", ..., ""]
}
"B": {...}
...
}
:
public class Letter
{
public string p1 {get; set;}
public string p2 {get; set;}
public List<string> l1 {get; set;}
public List<string> l2 {get; set;}
}
を、私はJSONファイルを持っています
var alphabet = JsonConvert.DeserializeObject<Dictionary<char, Letter>>(jsonString);
私はこのような値を参照できます:alphabet["A"]
今、確認したいのですが、デシリアライズしたいjsonString
が有効です。
ファイルからJsonSchema
を読み取る方法や、コードで生成する方法の例がいくつか見つかりました。しかし、私はjsonファイルの私の例のためにシーマを生成する方法を見つけることができません。
誰でも手伝ってもらえますか?
P.S.
今のところ私はこれを好きです。これは最善の方法ですか?
...
var schemaGenerator = new JSchemaGenerator();
var schemaForLetter = schemaGenerator.Generate(typeof (Letter));
var schema = new JSchema
{
Type = JSchemaType.Object,
Properties =
{
{ "A", schemaForLetter },
{ "B", schemaForLetter },
...
}
}
...
「var schema = generator.Generate(typeof(Dictionary))」とは何ですか? –
@AlekseyL。この質問への回答を書いてください、私は正解としてそれを確認することができます。 私は彼のjsonをアルファベット記号で定義するだけではなく、最初の結論がもっと正しいと思います。 – gek0n