我有一些类层次结构,由代码映射到几个表中。一个用于基本抽象类,每个具体类一个表。类层次结构比较简单,像这样:
public abstract class BaseClass {
// some common fields here
}
public class Subclass1 : BaseClass {
}
public class Subclass2 : BaseClass {
}
public class Subclass3 : BaseClass {
}
当我尝试通过 BaseClass 查询以从数据库中检索所有子类的集合时,就会出现问题。
var allInstances = dbSession.QueryOver<BaseClass>().List();
错误信息很简单:“无法实例化抽象类或接口”。
所以我的问题是:有没有办法为我的场景提供一个查询,或者我必须为每个子类运行一个查询?