Подтвердить что ты не робот

Как вы делаете NHibernate игнорировать свойство в POCO

У нас есть 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 игнорировал это свойство и что причина, по которой мы не поместили свойство в файл сопоставления. Но вместо этого он начал бросать ошибку.

Есть ли способ обойти это?

4b9b3361

Ответ 1

Вы должны сделать все члены виртуальными и не отображать свойство, которое вы хотите игнорировать.