私は.NET 3.5でC#を使用しています。IPAddress列を使用してDataTableをシリアライズ
私はSystem.Configuration.ApplicationSettingsBaseクラスを使用して、アプリケーション設定をロードして保存しています。私が保存したい設定の1つは、メモリ内のSystem.Data.DataTableです。 DataTableには、UInt32型とSystem.Net.IPAddress型の2つの列が含まれています。 ApplicationSettingsBaseでSave()関数を呼び出すと、次の例外が発生します。
InvalidOperationException:System.Net.IPAddressは、パラメータのないコンストラクタがないためシリアル化できません。
DataTableの代わりにSystem.Net.IPAddressオブジェクトを使用するだけで問題はありません。例外を引き起こしているDataTableには何かがあります。
何が起こっている可能性がありますか?どのようにそれを修正するための任意のアイデア?
を解決するかもしれないと思います。問題なく直接IPAddressオブジェクトをシリアル化できるときに、DataTableのシリアル化でIPAddressにパラメータのないコンストラクタが必要なのはなぜですか? –
@ Matt-コードサンプルを追加しました。 – RichardOD
ビンゴ!それが私が探していたものです。ありがとう! –