public async Task <IActionResult> Post([FromBody] UserInfo user) { List <Error> errors = new List <Error>(); if (user == null) { return(BadRequest()); } Account currentUser = await GetCurrentUserAsync(); errors = UserInfoValidator.Validate(user, errors); if (errors.Count() <= 0) { user.CreatedBy = currentUser; _context.UserInfo.Add(user); _context.SaveChanges(); var linkAccountRaw = _context.Account.Where(a => a.Email == user.Email); if (linkAccountRaw.Count() > 0) { Account linkAccount = linkAccountRaw.Single(); if (linkAccount.Infos == null) { linkAccount.Infos = new List <UserInfo>(); } linkAccount.Infos.Add(user); _context.SaveChanges(); } return(Created("users/" + user.Id, user)); } return(BadRequest(errors)); }
private void AssertValidationResult <T>(Expression <Func <UserInfo, T> > property, T value, bool expectedValid) { // Arrange var validator = new UserInfoValidator(); // Act if (expectedValid) { validator.ShouldNotHaveValidationErrorFor(property, value); } else { validator.ShouldHaveValidationErrorFor(property, value); } }