Ich versuche, ein weich löschbares Repository zu implementieren. Normalerweise lässt sich dies leicht mit einem Delete Event Listener realisieren. Um die gelöschten Entitäten herauszufiltern, kann ich eine Wo Attribut zu meiner Klassenzuordnung. Ich muss jedoch auch zwei weitere Methoden im Repository für diese Entität implementieren: Wiederherstellen y Bereinigen . Wiederherstellen wird Entitäten "ungelöscht" und Bereinigen wird sie hart gelöscht. Das bedeutet, dass ich das Where-Attribut nicht verwenden kann (da es weich gelöschte Entitäten für jeden Zugriff sperrt).
Ich habe es mit filtert stattdessen. Ich kann einen Filter erstellen und ihn in der Sitzung aktivieren oder deaktivieren, um das gleiche Ergebnis zu erzielen. Das Problem ist jedoch, dass Filter keine Auswirkungen auf die Methode Session.Get haben (sie wirken sich nur auf den ICriteria-basierten Zugriff aus).
Haben Sie eine Idee, wie Sie dieses Problem lösen können?
Danke
0 Stimmen
Haben Sie jemals eine Lösung für dieses Problem gefunden?
0 Stimmen
Nö. Filter funktionieren nicht bei Get. Sie wirken sich nur auf Kriterien aus. Ich musste einen anderen Ansatz für das Basis-Repository nur für "Get" implementieren und Filter die anderen Anwendungsfälle behandeln lassen.