0

我刚刚从 fluent nhibernate 1.1(使用 nhibernate 3.1)升级到 FluentNhibernate 1.3(使用 Nhibernate 3.3)。

我有一个继承树,其中基类是抽象的:

public abstract class Student {
string Firstname;
string Lastname;
}
public class DayStudent : Student {}
public class NightStudent : Student {}

public class School {
 List<Student> Students;
}

在 Nhibernate 3.1 中,我有一个学生表(包含名字和姓氏列)和另外 2 个用于 DayStudent 和 NightStudent 的表。这是我以前拥有的每场音乐会的桌子。现在在 Nhibernate 3.3 中,当我访问 School 类的 Student 集合时,它会抛出异常“无法实例化抽象类或接口”。我的映射以前在 nhibernate 3.1 中运行良好。

这个版本有什么变化?我该如何解决?

4

1 回答 1

0

有点晚了,抱歉,但这让我想起了我遇到的一个问题——如果你真的使用List<...>来收集列表,那么你的问题可能就在那里。我似乎记得您必须将 IList<...> 用于持久实体中的列表集合。您仍然可以将 List 的实例分配给学生,您只需声明 IList<> 类型的属性。希望这可以帮助。

于 2013-01-17T22:44:02.393 回答