public ActionResult CreateRole(NewAppRoleViewModel model) { var context = new AppSecurityContext(); var rolRepository = new RoleRepository(context); var permissionRepository = new PermissionRepository(context); var rolePermissionRepository = new RolePermissionRepository(context); if (ModelState.IsValid) { var role = mapper.Map <AppRole>(model); role.Id = Guid.NewGuid().ToString(); rolRepository.Add(role); if (model.SelectedPermissions == null) { model.SelectedPermissions = new int[0]; } foreach (var permissionId in model.SelectedPermissions) { rolePermissionRepository.Add(new AppRolePermission { PermissionId = permissionId, RoleId = role.Id }); } context.SaveChanges(); return(RedirectToAction("Roles", "SecuritySettings")); } var permissions = permissionRepository.GetAll(); model.AvailablePermissions = mapper.Map <ICollection <AppPermissionViewModel> >(permissions); return(View(model)); }
public ActionResult CreateRole() { var context = new AppSecurityContext(); var model = new NewAppRoleViewModel(); var permissionRepository = new PermissionRepository(context); var permissions = permissionRepository.GetAll(); model.AvailablePermissions = mapper.Map <ICollection <AppPermissionViewModel> >(permissions); return(View(model)); }