public IActionResult Post([FromBody] ShortenedUrlCreateDto value) { if (value == null) { return(BadRequest()); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var newUrl = Mapper.Map <ShortenedUrlEntity>(value); newUrl.CreationDate = DateTime.Now; _urlShortenerRepository.Add(newUrl); if (!_urlShortenerRepository.Save()) { return(StatusCode(500, "A problem happened while handling your request")); } return(CreatedAtRoute("GetShortenedUrl", new { newUrl.Id }, newUrl)); }
public async Task <IActionResult> ShortenUrl(ShortenedUrlCreateDto model) { if (!ModelState.IsValid) { return(View("Index", model)); } var response = new HttpResponseMessage(); using (var client = new HttpClient()) { var jsonModel = JsonConvert.SerializeObject(model); response = await client.PostAsync($"{_api.ApiEndPoint}", new StringContent(jsonModel, Encoding.UTF8, "application/json")); } if (!response.IsSuccessStatusCode) { ModelState.AddModelError("", response.ReasonPhrase); return(View("Index", model)); } return(RedirectToAction("Index")); }