Exemplo n.º 1
0
        /// <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);
            }
        }
Exemplo n.º 2
0
        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
                       ));
        }