0

我有一个基本地图类(在它自己的程序集中),其中 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();
    }
}

并将此类添加到映射。但它只生成一个运行时异常(属性段已经映射。很明显)。有什么建议么?我认为 Properties 属性可能会有所帮助,但已被弃用。

4

1 回答 1

0

我在流利的 nhibernate google-group 中得到了答案。主要思想是创建一个映射了主要属性的基础映射类(GroupMapBase)。还有具有延迟加载属性的 GroupMap 类。以及基于 GroupMapBase 的 MyGroupMap 类,其中需要映射的属性没有延迟加载。

它解决了我的问题。

于 2012-04-24T05:17:31.383 回答