Problemloseste Implementierung mehrerer Mandanten mit ASP.NET, NHibernate / Fluent NHibernate

Ich versuche, Mandantenfähigkeit in einer ASP.NET MVC-Anwendung zu implementieren, die NHibernate verwendet. Obwohl ich die Kontrolle über die Datenbank für Mandantenfähigkeit habe. Ich versuche herauszufinden, wie unsere Datenbankabfragen mit NHibernate am besten gefiltert werden können.

Ich würde gerne wissen, ob es einen schmerzlosen Weg gibt, wie ich eine Bedingung anhängen kann (so etwas wieWHERE InstanceID = 1) zu jeder CRUD-Abfrage an die DB mit NHibernate.

Ich habe mir globale Filter angesehen. Aber ich war mir nicht sicher, ob ich es richtig benutze. Ich habe so etwas versucht.

NHibernateSession.GetDefaultSessionFactory().GetCurrentSession()
.EnableFilter("instance-filter").SetParameter("InstanceId", "2");

Aber es schien nicht zu funktionieren. Ein gutes Beispiel für globale Filter von NHibernate / ein guter Ansatz zum Filtern aller DB-Abfragen mit einer Bedingung wäre sehr willkommen.

Antworten auf die Frage(1)

Ihre Antwort auf die Frage