public ActionResult Post([FromBody] PostContactRequest contactViewModel) { try { if (ModelState.IsValid) { var newContact = new Contact(); newContact.Id = Guid.NewGuid(); newContact.Name = contactViewModel.Name; newContact.Surname = contactViewModel.Surname; newContact.Email = contactViewModel.Email; newContact.Address = contactViewModel.Address; newContact.FixedPhone = contactViewModel.FixedPhone; newContact.MobilePhone = contactViewModel.MobilePhone; _contactsRepository.AddEntity(newContact); if (_contactsRepository.SaveAll()) { return(Created($"api/contacts/{newContact.Id}", newContact)); } } } catch (Exception ex) { return(BadRequest($"Failed to create new contact: {ex}")); } return(BadRequest("Failed to create new contact")); }
//postContactUs: sends AJAX POST input to the Service, and retrieves the ID for output. //creates an automated email to the Contact Request's email address. public HttpResponseMessage postContactUs(PostContactRequest model) { if (!ModelState.IsValid) { return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState)); } ItemResponse <int> response = new ItemResponse <int>(); ContactRequestServices contactService = new ContactRequestServices(); int tempBlogID = contactService.postContactRequest(model); response.Item = tempBlogID; EmailRequestModel crModel = new EmailRequestModel(); crModel.Email = model.Email; crModel.Name = model.Name; _EmailService.sendContactRequestEmail(crModel); return(Request.CreateResponse(HttpStatusCode.OK, response)); }