【发布时间】:2009-10-09 08:39:53
【问题描述】:
情况: 我有一个类 MyClass 及其“轻量级”版本 MyClassLite,所以我有
public class MyClass : MyClassLite
我还使用 hbm 文件来映射我的类(它们被映射到同一个表)。 问题是,当我尝试获取 MyClassLite 实体列表时,我不仅得到 MyClassLite 实体,而且还得到 MyClass 实体列表.我怎样才能摆脱它?
【问题讨论】:
-
这不合逻辑吗? MyClass 是 MyClassLite 的子类,因此任何 MyClass 实例也是 MyClassLite 的实例。如果您想摆脱它们,请更改您的继承层次结构。例如。引入一个基类并创建 MyClass 和 MyClassLite 的子类。
-
看起来合乎逻辑,但我想知道是否有任何选项(可能在 hbm 文件中)来防止检索派生实例。一定有什么..
-
您如何查询此表以获取 MyClassLite 的列表?
标签: c# nhibernate class mapping base