Пример #1
0
        public Task <UserGroupPoco> UpdateUserGroupAsync(UserGroupPoco poco)
        {
            var nameExists   = repo.UserGroupsByName(poco.Name).Any();
            var existingPoco = repo.UserGroupsById(poco.GroupId).First();

            if (poco.Name != existingPoco.Name && nameExists)
            {
                return(Task.FromResult((UserGroupPoco)null));
            }

            repo.DeleteUsersFromGroup(existingPoco.GroupId);

            foreach (var user in poco.Users)
            {
                repo.AddUserToGroup(user);
            }

            repo.UpdateUserGroup(poco);

            return(Task.FromResult(poco));
        }