public void AddUserToRole(HsrOrderApp.BL.DomainModel.User user, HsrOrderApp.BL.DomainModel.Role role) { try { User dbUser = db.UserSet.First(u => u.UserId == user.UserId); Role dbRole = db.RoleSet.First(r => r.RoleId == role.RoleId); dbUser.Roles.Add(dbRole); db.SaveChanges(); } catch (OptimisticConcurrencyException ex) { if (ExceptionPolicy.HandleException(ex, "DA Policy")) { throw; } } }
public int SaveUser(HsrOrderApp.BL.DomainModel.User user) { try { User dbUser = new User(); bool isNew = false; if (user.UserId == default(int) || user.UserId <= 0) { isNew = true; } dbUser.UserId = user.UserId; dbUser.Version = user.Version.ToTimestamp(); dbUser.Password = user.Password; dbUser.Username = user.UserName; if (user.Customer != null) { dbUser.CustomerId = user.Customer.CustomerId; } else { dbUser.Customer = null; } if (isNew) { db.Users.InsertOnSubmit(dbUser); } else { db.Users.Attach(dbUser, true); } db.SubmitChanges(); user.UserId = dbUser.UserId; return(dbUser.UserId); } catch (ChangeConflictException ex) { if (ExceptionPolicy.HandleException(ex, "DA Policy")) { throw; } return(default(int)); } }
public void RemoveUserFromRole(HsrOrderApp.BL.DomainModel.User user, HsrOrderApp.BL.DomainModel.Role role) { try { User dbUser = db.Users.FirstOrDefault(u => u.UserId == user.UserId); UserInRole dbUserInRole = dbUser.UserInRoles.FirstOrDefault(u => u.RoleId == role.RoleId); if (dbUserInRole == null) { // user not in role anyway return; } db.UserInRoles.DeleteOnSubmit(dbUserInRole); db.SubmitChanges(); } catch (ChangeConflictException ex) { if (ExceptionPolicy.HandleException(ex, "DA Policy")) { throw; } } }
public void AddUserToRole(HsrOrderApp.BL.DomainModel.User user, HsrOrderApp.BL.DomainModel.Role role) { try { UserInRole dbUserInRole = db.UserInRoles.FirstOrDefault(ur => ur.RoleId == role.RoleId && ur.UserId == user.UserId); if (dbUserInRole != null) { // user already in role return; } dbUserInRole = new UserInRole(); dbUserInRole.Role = db.Roles.FirstOrDefault(r => r.RoleId == role.RoleId); dbUserInRole.User = db.Users.FirstOrDefault(u => u.UserId == user.UserId); db.UserInRoles.InsertOnSubmit(dbUserInRole); db.SubmitChanges(); } catch (ChangeConflictException ex) { if (ExceptionPolicy.HandleException(ex, "DA Policy")) { throw; } } }
public int SaveUser(HsrOrderApp.BL.DomainModel.User user) { try { string setname = "UserSet"; User dbUser; bool isNew = false; if (user.UserId == default(int) || user.UserId <= 0) { isNew = true; dbUser = new User(); } else { dbUser = new User() { UserId = user.UserId, Version = user.Version.ToTimestamp() }; dbUser.EntityKey = db.CreateEntityKey(setname, dbUser); db.AttachTo(setname, dbUser); } dbUser.Version = user.Version.ToTimestamp(); dbUser.Password = user.Password; dbUser.Username = user.UserName; if (isNew) { if (dbUser.Customer != null) { dbUser.CustomerReference.EntityKey = new EntityKey("HsrOrderAppEntities.CustomerSet", "CustomerId", user.Customer.CustomerId); } db.AddToUserSet(dbUser); } else if (user.Customer == null) { if (dbUser.Customer != null) { dbUser.Customer.UserReference.Value = null; } dbUser.CustomerReference.Value = null; } else { if (dbUser.CustomerReference.GetEnsureLoadedReference().Value.CustomerId != user.Customer.CustomerId) { Customer newCustomer = new Customer { CustomerId = user.Customer.CustomerId }; db.AttachTo("CustomerSet", newCustomer); dbUser.Customer = newCustomer; } } db.SaveChanges(); user.UserId = dbUser.UserId; return(dbUser.UserId); } catch (OptimisticConcurrencyException ex) { if (ExceptionPolicy.HandleException(ex, "DA Policy")) { throw; } return(default(int)); } }