skip to Main Content
[NHibernate] Automatyczna Aktualizacja Daty I Czasu – O Ostatniej Zmianie W Rekordzie

[NHibernate] Automatyczna aktualizacja daty i czasu – o ostatniej zmianie w rekordzie

Jak pisałem poprzednio o problemie braku milisekund w dacie. Wspomniałem o tym, że tabele posiadają kolumnę informującą o ostatniej zmianie, która nastąpiła na rekordzie. Można się domyślić, że ręczne ustawianie tej wartości było by mozolne oraz podatne na błędy ( w szczególności – zapomnienie o wstawieniu nowej wartości)

Można to zautomatyzować przy użyciu Listnera. „Nasłuchiwacza” na zmiany wysyłane do bazy danych.

Encje posiadają properties (właściwość) o typie DateTime o nazwie LastChange. Do tego te encje implementują interfejs ILastChange, który wymusza zaimplementowanie property LastChange.

Aby NHibernate zaczął korzystać z Listnera, trzeba go zarejestrować podczas tworzenia SessionFactory. Jeżeli korzystasz z Fluent NHibernate rejestracja wygląda następująco:

Źródła

Paweł Sołtysiak

Programista, domowy kucharz i "amator amerykańskiej polityki".
Zbieram informacje z całej sieci, po odrzuceniu chwastów i dodaniu swojej opinii publikuje na blogu.

Back To Top