NHibernate 将实体移动到不同的表



使用NHibernate,我有一个帐户系统设置,具有不同类型的帐户(不同的权限等)

我想做的,但无法弄清楚的是:将一种帐户类型更改为另一种帐户类型。

以下设置的基本概念。

class Entity
{
  public int Id;
}
class UserAccount : Entity
{
  public string username;
  public string password;
  // additional account details...
}
class StudentAccount : UserAccount
{
  // student specifc information
}
class TeacherAccount : UserAccount
{
  // teacher specific information
}

在提供的示例中,我希望能够将学生帐户提升为教师帐户。

帐户的

用户名是唯一的,因此没有两个帐户可以具有相同的名称。

学生帐户和教师帐户都有一个用户帐户的外键

思潮?

将学生帐户提升为教师帐户

两者兼而有之?使用继承模型不可行。

改变类型?我会使用临时 sql 查询来做到这一点。这是一个非常特殊的情况。

最新更新