Xmlシリアル化-System.InvalidOperationException:「this」をシリアル化することはできませんか?

Roland Deschain

この質問があまり明白ではないことを願っていますが、私はシリアル化のトピックに最初の一歩を踏み出し、次の動作の説明を見つけることができませんでした。

クラスをシリアル化して、すべてが正しく設定されているかどうかをテストしたかったのです。このために、私はこのチュートリアルからコードを取得し次のように適合させました。

    private void SerializePresets(string path)
    {
        XmlSerializer xmlSerializer = new XmlSerializer(typeof(MyClass));
        using (TextWriter writer = new StreamWriter(path))
        {
            xmlSerializer.Serialize(writer, this);
        }
    }

このメソッドはその中にMyClassあり、そこからも呼び出されます。これにより、次の例外が発生します。

タイプ 'System.InvalidOperationException'の例外がSystem.Xml.dllで発生しましたが、ユーザーコードでは処理されませんでした

追加情報:タイプ「MyClass」を反映するエラーがありました。

以来MyClassプロパティとして、他のクラスのオブジェクトを保持している最初の私は、私があまりにもそれらのserializabelを行う必要があり、まだしかし、例外が持続すると思いました。ですから、シリアル化は不可能だと思いますが、thisこの推測の確認は見つかりませんでした。

編集:このプロパティは、内部例外に従って問題を引き起こします:

[XmlArray("VolumePresetList"), XmlArrayItem(typeof(LinearAxisColorPresetsModel), ElementName = "VolumePresetList")]
public ObservableCollection<LinearAxisColorPresetsModel> VolumePresetList { get; set; }
Roland Deschain

内部の例外の助けを借りて(もう一度ヒントをありがとう)、シリアル化が失敗した理由を見つけることができました。

このクラスにLinearAxisColorPresetsModelはパラメーターのないコンストラクターがなかったため、この問題が発生しました。

単に追加する

/// <summary>
/// Default Constructor
/// </summary>
private LinearAxisColorPresetsModel()
{

}

このクラスに私のための問題を解決しました。残っているのは、理由、パラメーターのないコンストラクターが必要な理由を見つけることです。

編集:この投稿でこの動作の背後にある理由を見つけました。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

抽象クラスを派生クラスを使用してXMLにシリアル化します。System.InvalidOperationException <Class xmlns = "/>は予期されていませんでした

XmlをSystem.Typeに逆シリアル化します

'System.ServiceModel.Channels.ReceivedFault'を修正する方法をシリアル化できません

System.Text.JSONは、Newtonsoftが行うことを逆シリアル化しません

System.Text.JsonでDateTime、Guid、またはEnumを逆シリアル化できません

JavaScriptSerializerはSystem.Drawing.Colorを逆シリアル化していません。Colorオブジェクトを逆シリアル化する方法は?

型をXMLにシリアル化しようとすると、「保護レベルが原因でSystem.RuntimeTypeにアクセスできません」というエラーが表示されます。

System.Text.Jsonはuintを逆シリアル化します

System.Text.JsonからNodaTimeInstantを逆シリアル化する

Protobuffシリアル化System.Numerics.BigInteger

System.Text.Jsonのリストメンバーの派生プロパティをシリアル化することは可能ですか?

System.Text.Jsonは、オブジェクトの配列を使用してオブジェクトを逆シリアル化できませんか?

LaravelでPDOインスタンスをシリアル化または非シリアル化することはできません

System.Text.Jsonを使用してjson文字列を動的オブジェクトに逆シリアル化することは可能ですか?

phpunitPDOインスタンスをシリアル化または非シリアル化することはできません

C#Xmlシリアル化:別のアセンブリからのオブジェクトを(逆)シリアル化することはできません

XMLを逆シリアル化できません

XML文字列を逆シリアル化できません

xmlをList <T>に逆シリアル化できません

多層XMLを逆シリアル化できません

xmlドキュメントを逆シリアル化することはできますが、同じドキュメントにシリアル化することはできません

System.Text.Jsonカスタムシリアル化/逆シリアル化

Jacksonは、enableDefaultTyping()でシリアル化するJSONを逆シリアル化できません

セッターなしでタイプを逆シリアル化することはできません

XMLをList <T>に逆シリアル化することは可能ですか?

.NETCoreを使用してJSON文字列を逆シリアル化することはできません

System.Configurationを使用せずにxmlファイルをプログラムで逆シリアル化する方法

JSON.netは逆シリアル化することを理解できません

System.Text.Jsonで抽象クラスをシリアル化する方法

TOP 一覧

  1. 1

    STSでループプロセス「クラスパス通知の送信」のループを停止する方法

  2. 2

    PictureBoxで画像のブレンドを無効にする

  3. 3

    HTTPヘッダー 'SOAPAction'の値はサーバーによって認識されませんでした

  4. 4

    レスポンシブウェブサイトの一番下にスティッキーなナビゲーションバーを作成するのに問題がある

  5. 5

    セレンのモデルダイアログからテキストを抽出するにはどうすればよいですか?

  6. 6

    Ansibleで複数行のシェルスクリプトを実行する方法

  7. 7

    Python / SciPyのピーク検出アルゴリズム

  8. 8

    ZScalerと証明書の問題により、Dockerを使用できません

  9. 9

    tkinterウィンドウを閉じてもPythonプログラムが終了しない

  10. 10

    tf.nn_conv2dとtf.nn.depthwise_conv2dの違い

  11. 11

    Crashlytics:コンパイラー生成とはどういう意味ですか?

  12. 12

    BLOBストレージからデータを読み取り、Azure関数アプリを使用してデータにアクセスする方法

  13. 13

    テキストフィールドの値に基づいて UIslider を移動します

  14. 14

    amCharts 4で積み上げ棒グラフの輪郭を描く方法は?

  15. 15

    MLでのデータ前処理の背後にある直感

  16. 16

    Postmanを使用してファイル付きの(ネストされた)jsonオブジェクトを送信する

  17. 17

    「埋め込みブラウザのOAuthログイン」を有効にしてコールバックURLを指定した後でも、Facebookのコールバックエラーが発生する

  18. 18

    Officeアドインを使用してOutlookの連絡先のリストにプログラムでアクセスすることは可能ですか?

  19. 19

    モジュラーJava Webアプリケーションを作成する最良の方法は何ですか

  20. 20

    Chromeウェブアプリのウェブビューの高さの問題

  21. 21

    ezdxf pythonパッケージを使用して既存のdxfファイルを変更するにはどうすればよいですか?

ホットタグ

アーカイブ