private static void WriteJson(string filepath,
string filename,
JsonSchema jsonschema)
{
using (TextWriter writer = File.CreateText(
@"C:\Users\ashutosh\Desktop\Output\" + filename + ".js"))
using (var jtw = new JsonTextWriter(writer))
{
jtw.Formatting = Formatting.Indented;
jsonschema.WriteTo(jtw);
}
//var json = JsonConvert.SerializeObject(
// jsonschema, Formatting.Indented,
// new JsonSerializerSettings {
// NullValueHandling = NullValueHandling.Ignore });
// File.WriteAllText(
// @"C:\Users\ashutosh\Desktop\Output\" + filename + ".js", json);
}
JSON.net から JSONSchema を作成し、それを書き出しています。私は
Invalid Operation Exception Sequence contains no matching element
しかし、通常のものの代わりにコメント付きのコードを使用すると。そのような例外は発生しません。
1) この例外の原因は何ですか? 2)私は2番目の方法を喜んで使用しましたが、直感的ではなく、(配列、整数、ブールなど)の代わりにschema.TypeのJsonTypeの整数値を出力します。
この状況から抜け出すにはどうすればよいですか?
UPDATEProperties
の " " プロパティのJsonSchema
カウント = 0
の
場合、例外が発生します。Properties
ですDictionary<String,JsonSchema>
。nullではないように初期化しました。最終的に、コードは要素を追加する場合と追加しない場合があります。そのため、カウントは 0 のままになる場合があります。