public bool AddR2U(int userId, int[] roleId) { var affrows = 0; if (roleId?.Length > 0) { var roles = dbContext.M_Role.Select.Where(f => f.Id.In(roleId)).ToList(); if (roles.Count == 0) { throw new ArgumentException(); } var insertItem = new List <M_Mapping>(); foreach (var item in roles) { var roleItem = new M_Mapping { UserId = userId, RoleId = item.Id }; insertItem.Add(roleItem); } affrows = dbContext.M_Mapping.Delete.Where(f => f.UserId == userId).SaveChange(); affrows += dbContext.M_Mapping.Insert.AddRange(insertItem).SaveChange(); } else { affrows = dbContext.M_Mapping.Delete.Where(f => f.UserId == userId).SaveChange(); } return(affrows > 0); }
private void UpdateRole(int userId, List <int> roles) { if (roles.Count > 0) { List <M_Mapping> maps = new List <M_Mapping>(); foreach (var item in roles) { var map = new M_Mapping { UserId = userId, CreateTime = DateTime.Now, RoleId = item }; maps.Add(map); } dbContext.M_Mapping.Insert.AddRange(maps).SaveChange(); } }