/// <summary> /// Tries to create contact on Contact.API. Returns contact id or -1 if operation didn't succeed /// </summary> /// <param name="model"></param> /// <returns></returns> public async Task <int> CreateContact(NewContactDTO model) { string uri = SharedLibraries.API.Contact.CreateContact(_remoteServiceBaseUrl); var contact = new StringContent(JsonConvert.SerializeObject(model), Encoding.UTF8, "application/json"); var response = await _httpClient.PostAsync(uri, contact); if (response.TrySaveModelStateErrors(ref modelStateErrors, throwException: false)) { // Change model state errors to property names of NewApplicationUserDTO Dictionary <string, string[]> modifiedModelStateErrors = new Dictionary <string, string[]>(); foreach (var item in modelStateErrors) { modifiedModelStateErrors.Add("NewContact" + item.Key, item.Value); } modelStateErrors = modifiedModelStateErrors; } var responseString = await response.Content.ReadAsStringAsync(); if (int.TryParse(responseString, out int id)) { return(id); } else { return(-1); } }
public async Task <ActionResult <NewContactDTO> > PostContactForm(NewContactDTO newContactDTO) { var contact = new ContactEntity { CompleteName = newContactDTO.CompleteName, Mail = newContactDTO.Mail, Phone = newContactDTO.Phone, Message = newContactDTO.Message }; _context.ContactItems.Add(contact); await _context.SaveChangesAsync(); return(CreatedAtAction( nameof(getContactForm), new { id = contact.Id }, contact )); }