【发布时间】:2009-03-12 11:59:54
【问题描述】:
我不是高级 NHibernate 用户,所以这可能有点重要,我只是还没有发现它.. 但到底是什么。
考虑类:
public class House
{
public int Id { get; set; }
public ISet<Room> Rooms
{
get;
set;
}
}
当指定 NHibernate Set 元素时,写是不够的:
<set name="Rooms" />
相反,我至少要写:
<set name="Rooms">
<key column="RoomId"/>
<one-to-many class="Room"/>
</set>
这似乎违反了 DRY 原则。 如果它是 Set,则默认应该是一对多的关系。该类应从集合的泛型类型中推断出来,作为键列,应使用集合元素类的主键。
在我看来,这似乎是一个合理的默认值。那为什么 NHiberbate 不聪明,还要我多输入 3 行呢?
【问题讨论】:
标签: .net xml nhibernate orm nhibernate-mapping