Würdest du es als schlechte Praxis betrachten, verschiedene Benutzerdaten in einer Datenbank als serialisierte Binärdatei zu speichern? Ist es eine gute, schlechte oder wirklich hässliche Idee?C#, SQL: Speichern beliebiger Benutzerdaten in einer Datenbank als serialisierte Binärdatei
Ich spreche über ziemlich willkürliche Dinge, wie die letzte Splitterentfernung auf einem Formular, den letzten Wert in einem Suchtextfeld, zuvor ausgewählte Checkbox-Indizes und so weiter. Dinge, die in Erinnerung bleiben sollten, sind nicht kritisch, wenn sie vergessen werden.
Ich mag es irgendwie, da ich dann nur eine Tabelle mit zB vier Spalten brauche: userid, source, key und value. Und wenn ich eine nette Wrapper-Klasse zum Speichern und Laden von Werten in diese Tabelle erzeuge, könnten die Dinge ziemlich gut funktionieren. Zum Beispiel würde ich die Datenbank nicht immer reparieren müssen, wenn eine neue Art von Einstellung ins Spiel kommt.
Es würde natürlich nicht mit Suchen und Ordnen und solchen Dingen funktionieren, aber das wäre sowieso nicht nötig, da Sie nur direkt von ihrem Index (Benutzer-ID + Quelle + Schlüssel) auf diese Schlüsselwertpaare zugreifen würden. Die Spalten wären auch nicht für Menschen lesbar, aber das wäre auch nicht wirklich ein Problem. Die Daten wären Daten, die ohne große Probleme gelöscht werden könnten.
Irgendwelche Rückmeldungen zu dieser Idee? Ist es ein schrecklicher? Ist es ein guter? Hast du etwas ähnliches gemacht?
Gibt es etwas Ähnliches für normale C# -Anwendungen? – Svish
@Swish, Leider wird dies nur auf ASP.NET Web Apps angewendet. Es tut uns leid. –