1
我有customer
和BankAccount
表。 CustomerID
是BankAccount
表中的外键。在这里,我们必须处理一对多的关系。我已经完成了CustomerInfo
和BankAccountInfo
的映射。我已附上问题帖子。如何映射Nhibernate集合
在这里,我们想用收集使用Iesi.collections
。有没有人有关于如何在Nhibernate中做到这一点的想法?
我有customer
和BankAccount
表。 CustomerID
是BankAccount
表中的外键。在这里,我们必须处理一对多的关系。我已经完成了CustomerInfo
和BankAccountInfo
的映射。我已附上问题帖子。如何映射Nhibernate集合
在这里,我们想用收集使用Iesi.collections
。有没有人有关于如何在Nhibernate中做到这一点的想法?
要做到收集映射开始阅读本文件:Chapter 6. Collection Mapping
如果你将使用Iesi
收藏,最合适的可能是ISet<>
,其目的是允许插入仅unqiue值:
public class Customer
{
public virtual Iesi.Collections.Generic.ISet<BankAccount> BankAccounts { get; set; }
}
和映射可能是这样
<set name="BankAccounts" inverse="true" lazy="true" table="BankAccount"
cascade="all" batch-size="25" >
<key column="CustomerId" />
<one-to-many class="BankAccount" />
</set>
注意:此映射有一些冗余属性,这可以帮助更智能地加载。例如。批量大小将避免1 + N负载,而做1 + N/25 ...级联会隐式解决添加项目的持久性...阅读更多文档。
完整的ISet描述:http://ayende.com/blog/3943/nhibernate-mapping-set