NHibernate: вставьте и обновите даты
Используя NHibernate, каков наилучший способ обработки столбцов InsertDate (или CreateDate) и UpdateDate?
Например:
public class Customer
{
public virtual string Name { get; set; }
public virtual DateTime InsertDate { get; set; }
public virtual DateTime UpdateDate { get; set; }
}
Вероятно, есть несколько способов справиться с этим, но кто-то, кто делал это раньше, может дать мне несколько советов.
Если это не очевидно, я хочу, чтобы для InsertDate была установлена дата, когда была вставлена запись, и после этого она должна быть неизменной. UpdateDate необходимо менять каждый раз, когда обновляется запись.
Бонусные баллы, если вы отвечаете с помощью Fluent Nhibernate.
2 ответа
Используйте для этого одитинговые перехватчики. Хороший пример можно найти здесь.
Я использовал что-то похожее на Ayende Rahien.
Не так важно - просто чтобы быть полным - моя версия использовала перехватчики, а не слушателей. Чтобы узнать больше информации о перехватчиках и слушателях, прочитайте этот вопрос.