public IActionResult AddAudioMessage([FromForm] AddAudioMessageRequest request) { if (request == null) { return(BadRequest("Unable to locate the body request")); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var exist = chatRepository.Exist(request.ChatIdentifier); if (!exist) { return(BadRequest("Unable to locate the specified chat.")); } var normalizedFilename = $"{Guid.NewGuid()}.jpg"; var file = request.Media; var filename = Path.Combine(hostingEnvironment.WebRootPath, Constants.Storage.Audio, normalizedFilename); using (var stream = System.IO.File.OpenWrite(filename)) { file.CopyToAsync(stream); } var message = messageRepository.AddAudioMessage(request.Message, request.ChatIdentifier, normalizedFilename); return(Created(new Uri($"/api/message/get/{message.Id}", UriKind.Relative), message)); }