NHibernate - сохранить идентификатор пользователя создателя из имени пользователя - PullRequest
0 голосов
/ 12 июля 2010

Я пытаюсь использовать NHibernate в проекте.Все мои доменные таблицы содержат поле «CreatedBy», которое является внешним ключом таблицы «Пользователи».Поскольку это приложение ASP.NET, единственная информация, которую я имею о пользователе на момент сохранения, - это имя пользователя из файла cookie.

Каков наилучший подход для получения идентификатора пользователя и его сохранения вполе CreatedBy таблицы домена?

Например, было бы просто написать код в приложении, чтобы загрузить пользователя из имени пользователя, и вставить его свойство UserId в свойство CreatedBy объекта домена перед его сохранением.,Тем не менее, это было бы неуклюже (я должен был бы помнить, чтобы делать все это всякий раз, когда сохраняется вновь созданный объект домена), а также включать в себя два попадания в базу данных, которых я бы предпочел избежать.Самый простой и элегантный способ сделать это?

Спасибо

Дэвид

1 Ответ

1 голос
/ 12 июля 2010

Слушатели событий - это путь; Вы можете увидеть учебное пособие по этому вопросу здесь: Создание журнала аудита с использованием событий NHibernate

...