public async Task <IActionResult> AdicionarAnexo(string mensagemId) { try { var arquivos = Request.Form.Files; List <ArquivoChamadoDTO> arquivosDto = new List <ArquivoChamadoDTO>(); if (arquivos.Count > 0) { foreach (var arquivo in arquivos) { if (arquivo.Length > 0) { var ms = new MemoryStream(); await arquivo.CopyToAsync(ms); arquivosDto.Add(new ArquivoChamadoDTO { MensagemId = mensagemId, Nome = arquivo.Name, ConteudoStream = ms, Tamanho = Convert.ToInt32(arquivo.Length) }); } } } if (arquivosDto.Count > 0) { switch (_configuration["FileSettings:StorageType"]) { case "GoogleDrive": await _mensagemService.SalvarArquivosGoogleDrive(mensagemId, arquivosDto); break; case "Banco": await _mensagemService.SalvarArquivosBanco(mensagemId, arquivosDto); break; case "Pasta": await _mensagemService.SalvarArquivosPasta(mensagemId, arquivosDto); break; } } return(Ok()); } catch (Exception ex) { return(BadRequest(ex.Message)); } }