public async Task <IActionResult> PostAPhotoRequest(PhotoRequestPost photoRequestPost) { //var errors = ModelState.Where(x => x.Value.Errors.Count > 0).Select(x => new { x.Key, x.Value.Errors }).ToArray(); var userId = this.User.FindFirstValue(ClaimTypes.NameIdentifier); var photoEnthusiast = _context.PhotoEnthusiasts.Where(e => e.IdentityUserId == userId).SingleOrDefault(); photoRequestPost.PhotoEnthusiastId = photoEnthusiast.PhotoEnthusiastId; if (ModelState.IsValid) { var geoAddress = photoRequestPost.Address.StreetAddress + ", " + photoRequestPost.Address.City + ", " + photoRequestPost.Address.State; GeoCode geocode = await _apiCalls.Geocoding(geoAddress); var lat = geocode.results[0].geometry.location.lat; var lng = geocode.results[0].geometry.location.lng; photoRequestPost.Address.Latitude = lat; photoRequestPost.Address.Longitude = lng; _context.Addresses.Add(photoRequestPost.Address); await _context.SaveChangesAsync(); _context.PhotoRequestPosts.Add(photoRequestPost); await _context.SaveChangesAsync(); return(RedirectToAction()); } return(View()); }