保存时是否可以排除实体的某些字段?

时间:2011-02-08 14:40:47

标签: asp.net nhibernate asp.net-mvc-2

我的所有实体都有以下属性:

  • public virtual DateTime CreatedDate {get; set;}
  • 公共虚拟字符串CreatedBy {get;组; }
  • public virtual DateTime UpdatedDate {get;组; }
  • public virtual string UpdatedBy {get;组; }

我已经实现了一个EventListener( IPreUpdateEventListener IPreInsertEventListener ),以便在插入/更新我的实体之前填充这些属性。
我没有在保存之前加载我的实体因为我在视图中有我的所有字段(id,version)。我唯一想避免放入隐藏字段(我的观点)的是 CreatedDate CreateBy
由于我只填写这些字段一次,当第一次创建实体时,我想知道当我更新(仅更新)我的权利时是否有办法排除它们?! 感谢。

1 个答案:

答案 0 :(得分:4)

是的。对于Fluent NHibernate映射使用

Map(x => x.CreatedDate).Not.Update();
Map(x => x.CreateBy).Not.Update();

用于XML使用

<property name="CreatedDate" update="false" />
<property name="CreateBy" update="false" />