public void Update(DalRole entity)
 {
     if (context.Database.Connection.State != ConnectionState.Open)
         context.Database.Connection.Open();
     Roles role = context.Set<Roles>().FirstOrDefault(r => r.id == entity.Id);
     role.Name = entity.Name;
 }
 public void Delete(DalRole e)
 {
     if (context.Database.Connection.State != ConnectionState.Open)
         context.Database.Connection.Open();
     Roles role = context.Set<Roles>().FirstOrDefault(r => r.id == e.Id);
     context.Set<Roles>().Remove(role);
 }
 public void Create(DalRole e)
 {
     if (context.Database.Connection.State != ConnectionState.Open)
         context.Database.Connection.Open();
     Roles role = new Roles()
     {
         id = e.Id,
         Name = e.Name
     };
     context.Set<Roles>().Add(role);
 }
 public void SetRole(DalUser user, DalRole role)
 {
     if (context.Database.Connection.State != ConnectionState.Open)
         context.Database.Connection.Open();
     Users ormuser = context.Set<Users>().FirstOrDefault(users => users.id == user.Id);
     Roles ormrole = context.Set<Roles>().FirstOrDefault(roles => roles.id == role.Id);
     ormuser.Roles.Add(ormrole);
 }
 public IEnumerable<DalUser> GetByRole(DalRole role)
 {
     if (context.Database.Connection.State != ConnectionState.Open)
         context.Database.Connection.Open();
     Roles r = context.Set<Roles>().FirstOrDefault(roles => roles.id == role.Id);
     IEnumerable<Users> users = context.Set<Users>().Where(user => user.Roles.Contains(r)).AsEnumerable();
     List<DalUser> result = new List<DalUser>();
     foreach (Users u in users)
     {
         result.Add(new DalUser()
         {
             Id = u.id,
             Login = u.Login,
             Email = u.Email,
             FirstName = u.FirstName,
             SecondName = u.SecondName,
             ThirdName = u.ThirdName,
             PasswordHash = u.PasswordHash
         });
     }
     return result;
 }