Ich verwende NHibernate als Datenzugriffsschicht für meine ASP.NET MVC-Anwendung. Ich verwende auch Strukturkarte als IoC-Container. Ich habe Structre map konfiguriert, um eine Sitzungsfactory als Singleton zu erstellen und Sitzungen pro Anfrage (InstanceScope.Hybrid) zu erstellen. Ich kann grundlegende CRUD-Operationen problemlos durchführen.NHibernate kann keine neuen Daten aus der Datenbank übernehmen
Jetzt habe ich einen Hintergrundprozess alle 30 Sekunden ausgeführt, die ein paar Repositories verwendet (die wiederum Sitzungen verwenden). Und dieser Hintergrundprozess kann die neuen Daten aus irgendeinem Grund nicht aufnehmen. Vielleicht vermisse ich eine einfache Sache. Ich habe versucht zu googeln, konnte aber nichts Nützliches finden. Es würde mir wirklich helfen, wenn mich jemand in die richtige Richtung weist.
EDIT:
Ich bin nicht sicher, ob ich die zweite Level-Cache aktiviert bin, ich bin ein Neuling mit NHibernate, Meine Hibernate-Konfigurationsdatei unter eingefügt.
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-configuration xmlns="urn:nhibernate-configuration-2.2">
<session-factory>
<property name="connection.provider">NHibernate.Connection.DriverConnectionProvider</property>
<property name="connection.driver_class">NHibernate.Driver.SqlClientDriver</property>
<property name="dialect">NHibernate.Dialect.MsSql2005Dialect</property>
<property name="connection.connection_string">Data Source=.\SQLEXPRESS;Initial Catalog=Map.db;Integrated Security=True</property>
<property name="show_sql">true</property>
<mapping assembly="Infrastructure"/>
</session-factory>
</hibernate-configuration>
Die Hauptsache ich wissen will, ist, wenn es ein Design/Design-Muster ist, das bereits in typischen Web-Anwendungen mit NHibernate verwendet wird. Und würde die Verwendung zustandsloser Sitzungen das Problem lösen, wenn meine Datenbankeinstellungen von einer anderen App aktualisiert werden?