public void AddUserAccount(UserSignUp user) { using (LibraryEntities db = new LibraryEntities()) { SYSUsers SU = new SYSUsers(); SU.LoginName = user.LoginName; SU.PasswordEncryptedText = user.Password; SU.RowCreatedSYSUserID = user.SYSUserID > 0 ? user.SYSUserID : 1; SU.RowModifiedSYSUserID = user.SYSUserID > 0 ? user.SYSUserID : 1;; SU.RowCreatedDateTime = DateTime.Now; SU.RowModifiedDateTime = DateTime.Now; db.SYSUser.Add(SU); db.SaveChanges(); SYSUserProfiles SUP = new SYSUserProfiles(); SUP.SYSUserID = SU.SYSUserID; SUP.FirstName = user.FirstName; SUP.LastName = user.LastName; SUP.Gender = user.Gender; SUP.RowCreatedSYSUserID = user.SYSUserID > 0 ? user.SYSUserID : 1; SUP.RowModifiedSYSUserID = user.SYSUserID > 0 ? user.SYSUserID : 1; SUP.RowCreatedDateTime = DateTime.Now; SUP.RowModifiedDateTime = DateTime.Now; db.SYSUserProfile.Add(SUP); db.SaveChanges(); if (user.LOOKUPRoleID > 0) { SYSUserRoles SUR = new SYSUserRoles(); SUR.LOOKUPRoleID = user.LOOKUPRoleID; SUR.SYSUserID = user.SYSUserID; SUR.IsActive = true; SUR.RowCreatedSYSUserID = user.SYSUserID > 0 ? user.SYSUserID : 1; SUR.RowModifiedSYSUserID = user.SYSUserID > 0 ? user.SYSUserID : 1; SUR.RowCreatedDateTime = DateTime.Now; SUR.RowModifiedDateTime = DateTime.Now; db.SYSUserRole.Add(SUR); db.SaveChanges(); } } }
//checks for the existing records in the user's table and then validates //if the corresponding user has roles assigned to it. public bool IsUserInRole(string loginName, string roleName) { using (LibraryEntities db = new LibraryEntities()) { SYSUsers SU = db.SYSUser.Where(o => o.LoginName.ToLower().Equals(loginName))?.FirstOrDefault(); if (SU != null) { var roles = from q in db.SYSUserRole join r in db.LOOKUPRole on q.LOOKUPRoleID equals r.LOOKUPRoleID where r.RoleName.Equals(roleName) && q.SYSUserID.Equals(SU.SYSUserID) select r.RoleName; if (roles != null) { return(roles.Any()); } } return(false); } }