你如何让NHibernate忽略POCO中的属性

时间:2011-04-29 10:02:21

标签: c# .net nhibernate-mapping

我们有POCO,例如:

public class Person
{
    public Guid PersonID { get; set; }

    public string FirstName { get; set; }

    public string LastName { get; set; }

    public DateTime DateOfBirth { get; set; }

    public string   Version {get; set; }
}

相应的hbm文件为

<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" assembly="NHibernate.FirstAttempt"  namespace="NHibernate.FirstAttempt.Entity" >
  <class name="Person" lazy="false">
    <id name="PersonID">
      <generator class="guid" />
    </id>
    <property name="FirstName"  />
    <property name="LastName"     />
    <property name="DateOfBirth"  />
  </class>
</hibernate-mapping>

如果仔细观察,我们有一个Version属性,数据库中没有列?我们只是希望nHibernate忽略这个属性,这就是我们没有将属性放在映射文件中的原因。但相反,它开始抛出错误。

有解决方法吗?

1 个答案:

答案 0 :(得分:19)

您应该将所有成员设为虚拟,而不是映射您要忽略的属性。