Frage

Ich habe eine Webanwendung mit einer NHibernate Data Access Layer.Ich habe eine große Anzahl von Benutzereinstellungen, die gespeichert werden können. Dabei handelt es sich hauptsächlich um boolesche Werte, die beispielsweise registrieren, dass ein Dialog geschlossen wurde und nicht erneut angezeigt werden soll.

Das Problem besteht darin, dass ich bei NHibernate jedes Mal, wenn ein neuer Dialog hinzugefügt wird, zu meinem Datenbankschema etwas hinzufügen und der persistenten Klasse eine Eigenschaft hinzufügen muss, um zu registrieren, ob er verworfen wurde oder nicht.

Es muss einen einfacheren Weg geben.Was ist es?

War es hilfreich?

Lösung

Eine andere Möglichkeit besteht darin, dies zu lesen Post von Ayende, wobei grundsätzlich dynamische Felder berücksichtigt werden

Ein gemeinsames Thema in vielen Anwendungen ist die Notwendigkeit, benutzerdefinierte / dynamische Felder zu unterstützen.Mit anderen Worten, der Systemadministrator kann entscheiden, dass der Kunde einige zusätzliche Felder haben muss, die nicht Teil der Hauptentwicklung sind.

Lesen Sie auch Ayendes letzten Kommentar

  • Sie können eine Sammlung in eine dynamische Eigenschaft einfügen.
  • Sie können die Konfiguration programmgesteuert bearbeiten

Bearbeiten Aus irgendeinem Grund ist mir gerade aufgefallen, dass ich diese über ein Jahr alte Frage beantwortet habe!Ich habe keine Ahnung, wie ich hierher gekommen bin!Die Antwort ist jedoch immer noch gut

Andere Tipps

Sie können eine Einstellungstabelle verwenden, um die Einstellungen zu speichern und einen Wert für jeden Dialog hinzufügen:

Tabelleneinstellungen Id, Benutzer-ID, DialogName, Wert

1, 1, FirstDialog, True

2, 1, SecondDialog False

3, 2, FirstDialog False

4, 2, SecondDialog False

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top