使用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 查询来做到这一点。这是一个非常特殊的情况。