Aspnetboilerplate mvc代码首先生成相同的字段两次

时间:2017-06-24 19:38:51

标签: asp.net-mvc-5 ef-code-first aspnetboilerplate

我不知道它是否与abp有关但是,我可能会相信社区中的某些人可以帮助我。

我有以下用户和部门实体。用户实体确实带有abp默认值。这很简单,我指定了导航。但代码首先为我生成了这个愚蠢的数据库。表中有两个用户ID,这使得很难在项目中跟踪它。为什么会这样,以及如何避免? enter image description here

public class User : AbpUser<User>
{             
    public virtual ICollection<UserDepartment> UserDepartments { get; set; }

}

public class Department : FullAuditedEntity<int, User>
{
    public virtual ICollection<UserDepartment> UserDepartments { get; set; }
}

public class UserDepartment : FullAuditedEntity<int, User>
{
    public virtual long UserId { get; set; }

    [ForeignKey("DepartmentId")]
    public virtual Department Department { get; set; }

    public virtual int DepartmentId { get; set; }

    [ForeignKey("UserId")]
    public virtual User User { get; set; }
}

1 个答案:

答案 0 :(得分:1)

您继承自 FullAuditedEntity 通用版本,其中包含向用户提供的导航属性。

只需从通用中删除用户。

public class Department : FullAuditedEntity<int>
{

}

public class UserDepartment : FullAuditedEntity<int>
{

}

这就是全部。您可以在this link中详细了解或查看this link的实施情况。

我希望这很有用。