【C#】System.InvalidOperationException: XmlReader は、型 None のノードではなく型 Element のノード上に存在する必要があります。
Visual C# 2017で
- 1. 起動したらJSONファイルを読み込む
- 2. ボタンを押すと処理Aが実行される
- 3. 他のコレクションで値を変える
- 4. 再度ボタンを押して処理Aを実行させる
ということがしたいのですが、4. の際に以下エラーが出ました。
System.InvalidOperationException: XmlReader は、型 None のノードではなく型 Element のノード上に存在する必要があります。
で、エラーのあった個所を見てみると
ファイル名:Dynamicjson.cs
該当コード: public static dynamic Parse(string json, Encoding encoding) { using (var reader = JsonReaderWriterFactory.CreateJsonReader(encoding.GetBytes(json), XmlDictionaryReaderQuotas.Max)) { return ToValue(XElement.Load(reader)); } }
でした。
自分が書いたコードをよく見てみると、
JSONファイルを開くためのコードを「画面を起動したとき」に処理されるようになってました。
「ボタンを押したとき」に開いてなかったんですね。
そりゃ怒られるわ(笑)