Ich verwende C# mit .NET 3.5.Serialisieren einer DataTable mit einer IPAddress-Spalte
Ich verwende die System.Configuration.ApplicationSettingsBase-Klasse zum Laden und Speichern von Anwendungseinstellungen. Eine der Einstellungen, die ich beibehalten möchte, ist eine speicherinterne System.Data.DataTable. Die DataTable enthält nur zwei Spalten vom Typ UInt32 bzw. System.Net.IPAddress. Wenn ich die Funktion Save() auf der ApplicationSettingsBase aufrufen, erhalte ich die folgende Ausnahme:
InvalidOperationException: System.Net.IPAddress kann nicht serialisiert werden, da es keinen parameterlosen Konstruktor hat.
Wenn ich nur ein System.Net.IPAddress-Objekt als Einstellung anstelle der DataTable verwenden, habe ich kein Problem. Da ist etwas in der DataTable, die die Ausnahme verursacht.
Irgendwelche Ideen, was passieren könnte? Irgendwelche Ideen, wie man es beheben kann?
Ihr Problem sicherlich eine Möglichkeit, lösen könnte, dass es zu beheben, aber es erklärt nicht, warum das Problem existiert. Warum benötigt die Serialisierung der DataTable IPAddress für einen parameterlosen Konstruktor, wenn ich ein IPAddress-Objekt direkt ohne Probleme serialisieren kann? –
@ Matt- Ich habe jetzt ein Codebeispiel hinzugefügt. – RichardOD
Bingo! Das habe ich gesucht. Vielen Dank! –