Nhibernate映射Lazy加载无代理

时间:2011-10-05 12:52:14

标签: fluent-nhibernate

你有以下继承:

class A {

 } class B : A {

 } 
class C { 
    public A Product{get;set} 
}

和流畅的映射 我在哪里映射C:

  

参考文献(x => x.Product).Cascade.SaveUpdate();

当我尝试将Product转换为B a get cast异常,因为nhibernate返回A类代理,我试图设置 延迟加载该属性的代理,但它不起作用: 引用(x => x.Product).LazyLoad(Laziness.NoProxy).Cascade.SaveUpdate(); 我该怎么办呢?提前致谢

1 个答案:

答案 0 :(得分:1)

3个选项:

1)禁用此参考的延迟加载

2)参考Any:在C表中存储A的类型

3)使用多态而不是强制转换