コード例 #1
0
        public async Task <IActionResult> Create(CredentialEditViewModel credentialVM)
        {
            if (!ModelState.IsValid)
            {
                return(View(credentialVM));
            }

            var credential = new Credential
            {
                Description     = credentialVM.Description,
                Value           = credentialVM.Value,
                UserCredentials = new List <UserCredential>(),
            };

            foreach (var userId in credentialVM.SelectedUser)
            {
                credential.UserCredentials.Add(new UserCredential
                {
                    UserId = userId
                });
            }

            _db.Add(credential);
            await _db.SaveChangesAsync();

            return(RedirectToAction(nameof(Index)));
        }
コード例 #2
0
        public async Task <IActionResult> Create(UserEditViewModel userVM)
        {
            if (ModelState.IsValid)
            {
                var user = new User();
                {
                    user.Id   = Guid.NewGuid();
                    user.Name = userVM.UserName;

                    if (userVM.IsAdmin == true)
                    {
                        user.Role = Roles.Admin;
                    }
                    else
                    {
                        user.Role = Roles.User;
                    }

                    user.UserCredentials = new List <UserCredential>();

                    foreach (Guid credentialId in userVM.SelectedCredential)
                    {
                        var credential = _context.Find <Credential>(credentialId);
                        user.UserCredentials.Add(new UserCredential {
                            User = user, Credential = credential
                        });
                        _context.Add(user);
                    }

                    await _context.SaveChangesAsync();

                    return(RedirectToAction(nameof(Index)));
                }
            }
            return(View(userVM));
        }