Я начал работать с Entity Framework, и у меня есть одна большая проблема. Я хочу, чтобы отношение между многими объектами находилось между объектами User
и Role
.Entity Framework - свойство множественной навигации
Так что я создал 3 таблицы User
, Role
, UserRoles
Далее я создал 3 сущности:
public class User
{
public virtual int UserId { get; protected set; }
public virtual string UserName { get; set; }
public virtual string Password { get; set; }
public virtual DateTime CreateDate { get; set; }
public virtual ICollection<UserRole> Roles { get; set; }
public virtual ICollection<UserRole> CreatedRoles { get; set; }
}
public class Role
{
public virtual int RoleId { get; protected set; }
public virtual string Name { get; set; }
}
public class UserRole
{
public virtual int UserRoleId { get; protected set; }
public virtual int UserId { get; set; }
public virtual User User { get; set; }
public virtual int RoleId { get; set; }
public virtual Role Role { get; set; }
public virtual DateTime CreateDate { get; set; }
public virtual int CreateUserId { get; set; }
public virtual User CreateUser { get; set; }
}
Я хочу, чтобы отделить отображенный пользователя от созданного пользователя. И на этом этапе Entity Framework начинает бросать ошибки.
Далее я хочу перейти от User
к его сопоставленным ролям и к его созданным сопоставлениям.
Могу ли я настроить Entity Framework для выполнения этих задач?
Я думаю, что это хорошее отношение в БД, так что я хочу создать хорошие Entities в .NET –