public IActionResult PutData(int id, Usuario novoDado) { Usuario usuarioBuscado = _usuarioRepository.BuscarUsuario(id); if (usuarioBuscado.Email != null) { novoDado.Id = id; _usuarioRepository.AlterarDados(usuarioBuscado, novoDado); return(StatusCode(201, "DADOS ALTERADOS COM SUCESSO")); } return(StatusCode(404, "USUÁRIO NÃO ENCONTRADO")); }
public async Task <IActionResult> AlterarDados(Usuario u) { if (u.imagem is null) { UsuarioRepository usuarioRepo = new UsuarioRepository(); usuarioRepo.AlterarDados(u); return(RedirectToAction("Detalhes", "Usuario", new { @id = u.id })); } long tamanhoArquivos = u.imagem.Sum(f => f.Length); // caminho completo do arquivo na localização temporária var caminhoArquivo = Path.GetTempFileName(); // processa os arquivo enviados //percorre a lista de arquivos selecionados foreach (var arquivo in u.imagem) { //verifica se existem arquivos if (arquivo == null || arquivo.Length == 0) { //retorna a viewdata com erro ViewData["Erro"] = "Error: Arquivo(s) não selecionado(s)"; return(Content("eerooo")); } // < define a pasta onde vamos salvar os arquivos > // string pasta = "Arquivos_Usuario"; // Define um nome para o arquivo enviado incluindo o sufixo obtido de milesegundos string nomeArquivo = "Usuario_arquivo_" + DateTime.Now.Millisecond.ToString(); //verifica qual o tipo de arquivo : jpg, gif, png, pdf ou tmp if (arquivo.FileName.Contains(".jpg")) { nomeArquivo += ".jpg"; } else if (arquivo.FileName.Contains(".gif")) { nomeArquivo += ".gif"; } else if (arquivo.FileName.Contains(".png")) { nomeArquivo += ".png"; } else if (arquivo.FileName.Contains(".pdf")) { nomeArquivo += ".pdf"; } else if (arquivo.FileName.Contains(".jpeg")) { nomeArquivo += ".jpeg"; } else { nomeArquivo += ".tmp"; } //< obtém o caminho físico da pasta wwwroot > string caminho_WebRoot = _appEnvironment.WebRootPath; // monta o caminho onde vamos salvar o arquivo : // ~\wwwroot\Arquivos\Arquivos_Usuario\Recebidos string caminhoDestinoArquivo = caminho_WebRoot + "/img"; // incluir a pasta Recebidos e o nome do arquivo enviado : // ~\wwwroot\Arquivos\Arquivos_Usuario\Recebidos\ string caminhoDestinoArquivoOriginal = caminhoDestinoArquivo + "/usuarios/" + nomeArquivo; //copia o arquivo para o local de destino original using (var stream = new FileStream(caminhoDestinoArquivoOriginal, FileMode.Create)) { await arquivo.CopyToAsync(stream); } UsuarioRepository usuarioRepo = new UsuarioRepository(); usuarioRepo.AlterarDados(u, nomeArquivo); } return(RedirectToAction("Detalhes", new { id = u.id })); }