1
我正在使用NHibernate 3.2並有兩個表映射爲相同的類,在映射中指定「實體名稱」。麻煩的是,當我使用ISession中的方法來指示實體名稱NHibernate堅持以他們自己的名義扣除時,忽略了我的規範。NHibernate 3.2忽略實體名稱
這是代碼我的單元測試:
public class Cliente
{
public virtual Guid UID { get; set; }
public virtual long Revisao { get; set; }
public virtual string Nome { get; set; }
public virtual DateTime DataNascimento { get; set; }
}
<class name="Cliente">
<id name="UID">
<generator class="guid"/>
</id>
<version name="Revisao" />
<property name="Nome" />
<property name="DataNascimento" />
</class>
<class name="Cliente" entity-name="ClienteAudit" schema="audit">
<composite-id>
<key-property name="UID" />
<key-property name="Revisao" />
</composite-id>
<property name="Nome" />
<property name="DataNascimento" />
</class>
var cliente = new Cliente {DataNascimento = DateTime.Parse("1988/07/09"), Nome = "Heber Senger"};
using (var ss = sf.OpenSession())
{
ss.Save("Cliente", cliente);
ss.Flush();
}
的NHibernate堅持認爲在拯救實體爲「ClienteAudit」(我在聽衆和表驗證),並明確地我通知實體名稱爲「Cliente」。
我只是嘗試: - 在Cliente映射中指定實體名稱; - 在save方法中省略名稱,讓NHibernate免費發現名稱,再次暗示「ClienteAudit」; - 現在我正在學習SessionImpl的內部代碼等等。
如果任何人都可以幫助將是偉大的。謝謝。