我有一个基本地图类(在自己的程序集中),其中Segment属性声明为 LazyLoad 。
public class GroupMap : ClassMap<Group>
{
public GroupMap()
{
....
Map(x => x.Segment)
.LazyLoad();
}
}
在我的应用程序中,我希望此属性不是LazyLoad。我试过这样的方法:
public class MyGroupMap : GroupMap
{
public MyGroupMap() : base()
{
Map(x => x.Segment)
.Not.LazyLoad();
}
}
将此类添加到Mappings。但它只生成一个运行时异常(Property Segment已经映射过了。显而易见)。有什么建议?我认为Properties属性可能有所帮助,但它已被弃用。
答案 0 :(得分:0)
我在流利的nhibernate google-group中得到答案。 主要思想是创建一个映射了主要属性的基本映射类(GroupMapBase)。也是具有lazyload属性的GroupMap类。 并且MyGroupMap类基于GroupMapBase,其中需要的属性Mapped而不进行延迟加载。
它解决了我的问题。