Serialisierte Objekte in einer SQL-Server DB abspeichern
-
Hallo,
ich habe folgenden Klasse und moechte die in einer SQL-Server DB abspeichern um sie spaeter wiederherstellen zu koennen. Kennt sich damit jemand vieleicht aus ?
[Serializable()] public class Session { private int ID; private bool Valid; private Permission permissions; public Session(int ID, bool Valid, Permission per) { this.ID = ID; this.Valid = Valid; this.permissions = per; } } public static void Main() { ... Session sess = new Session(1000, true, permis); // Dieses obj soll nun in die DB rein }
Waere fuer jegliche Hilfe dankbar.
-
Je nach Serializierungsart verwendest du ein BLOB oder ein NTEXT Feld in der Datenbank. Ab den Sql Server 2005 ist es auch Möglich eine vom XmlSerializer erstellte XML-Struktur in ein spezielles XML Datenbankfeld zu speichern.
Grundsätlich rate ich aber davon ab zu serializieren, sondern eher eine Tabelle zugenerieren und die einzelnen Properies|Felder als Datenbankfelder zuspeichern. Somit hast du auch später die Möglichkeit deine Daten auf der DB zudurchsuchen und auch Auswertungen zufahren.
-
Danke,
aber was ist denn genau der Datentyp BLOB meinst du image oder byte ?
Hast Du vieleicht ein kleines Codebeispiel für mich parat ?
Also Du meinst eher eine DataTable zu generieren und die dann mit den Werten der Klasse füllen. Danach das ganze mit Update zu aktuallisieren richtig ?