public async Task PutLivroAsync(LivroUpload modal) { HttpContent contant = CreateMultiParteFormDataContent(modal); var response = await this._httpClient.PutAsync("Livros", contant); response.EnsureSuccessStatusCode(); }
public async Task PostLivroAsync(LivroUpload model) { HttpContent content = CreateMultipartFormDataContent(model); var resposta = await _httpClient.PostAsync("livros", content); resposta.EnsureSuccessStatusCode(); }
private HttpContent CreateMultipartFormDataContent(LivroUpload model) { // Criando conteudo do request para api (Passando pelo Form e não Body) var content = new MultipartFormDataContent(); content.Add(new StringContent(model.Titulo), EnvolveComAspasDuplas("titulo")); content.Add(new StringContent(model.Subtitulo), EnvolveComAspasDuplas("subtitulo")); content.Add(new StringContent(model.Resumo), EnvolveComAspasDuplas("resumo")); content.Add(new StringContent(model.Autor), EnvolveComAspasDuplas("autor")); content.Add(new StringContent(model.Lista.ParaString()), EnvolveComAspasDuplas("lista")); if (model.Id > 0) { content.Add(new StringContent(model.Id.ToString()), EnvolveComAspasDuplas("id")); } if(model.Capa != null) { var imagemContent = new ByteArrayContent(model.Capa.ConvertToBytes()); imagemContent.Headers.Add("content-type", "image/png"); content.Add( imagemContent, // Imagem em Byte EnvolveComAspasDuplas("capa"), // Nome da chave EnvolveComAspasDuplas(model.Capa.FileName)); // Nome do arquivo } return content; }
private HttpContent CreateMultipartFormDataContent(LivroUpload model) { var content = new MultipartFormDataContent(); content.Add(new StringContent(model.Titulo), EnvolveComAspasDuplas("titulo")); content.Add(new StringContent(model.Lista.ParaString()), EnvolveComAspasDuplas("lista")); if (!string.IsNullOrEmpty(model.Subtitulo)) { content.Add(new StringContent(model.Subtitulo), EnvolveComAspasDuplas("subtitulo")); } if (!string.IsNullOrEmpty(model.Resumo)) { content.Add(new StringContent(model.Resumo), EnvolveComAspasDuplas("resumo")); } if (!string.IsNullOrEmpty(model.Autor)) { content.Add(new StringContent(model.Autor), EnvolveComAspasDuplas("autor")); } if (model.Id > 0) { content.Add(new StringContent(model.Id.ToString()), EnvolveComAspasDuplas("id")); } if (model.Capa != null) { var imagemContent = new ByteArrayContent(model.Capa.ConvertToBytes()); imagemContent.Headers.Add("content-type", "image/png"); content.Add(imagemContent, EnvolveComAspasDuplas("capa"), EnvolveComAspasDuplas("capa.png")); } return(content); }
public async Task PostLivroAsync(LivroUpload model) { AddBearerToken(); HttpContent content = CreateMultipartFormDataContent(model); var result = await _httpClient.PostAsync($"livros", content); result.EnsureSuccessStatusCode(); }
public async Task PutLivroAsync(LivroUpload livro) { HttpContent content = CreateMultiPartFormData(livro); var resposta = await _httpClient .PutAsync(string.Format(_configuration.GetSection("GetByIdLivros").Value, livro.Id), content); resposta.EnsureSuccessStatusCode(); }
public async Task PostLivroAsync(LivroUpload livro) { HttpContent content = CreateMultiPartFormData(livro); var resposta = await _httpClient .PostAsync(_configuration.GetSection("GetAllLivros").Value, content); resposta.EnsureSuccessStatusCode(); }
public async Task PutLivroAsync(LivroUpload model) { AddBearerToken(); HttpContent content = CreateMultipartFormDataContent(model); var httpResponse = await _httpClient.PutAsync("livros", content); httpResponse.EnsureSuccessStatusCode(); }
public IActionResult Novo(LivroUpload model) { if (ModelState.IsValid) { _repo.Incluir(model.ToLivro()); return(RedirectToAction("Index", "Home")); } return(View(model)); }
public async Task <IActionResult> Detalhes(LivroUpload model) { if (ModelState.IsValid) { await _service.AtualizaLivroAsync(model.ToLivro()); return(RedirectToAction("Index", "Home")); } return(View(model)); }
public async Task <IActionResult> Novo(LivroUpload model) { if (ModelState.IsValid) { await _api.PostLivroAsync(model); return(RedirectToAction("Index", "Home")); } return(View(model)); }
public async Task <IActionResult> Detalhes(LivroUpload model) { if (ModelState.IsValid) { await _livroApiClient.PutLivroAsync(model); return(RedirectToAction("Index", "Home")); } return(View(model)); }
public async Task <IActionResult> Novo(LivroUpload model) { if (ModelState.IsValid) { // _repo.Incluir(model.ToLivro()); await _apiClient.PostLivroAsync(model); return(RedirectToAction("Index", "Home")); } return(View(model)); }
public async Task PutLivroAsync(LivroUpload model) { AddBearerToken(); HttpContent content = CreateMultipartFormData(model); var resposta = await _httpClient.PutAsync("livros", content); Console.WriteLine(resposta); resposta.EnsureSuccessStatusCode(); }
public async Task PostOrPutLivroAsync(LivroUpload livro) { HttpContent content = CreateMultipartContent(livro.ToLivro()); var resposta = await(livro.Id == 0 ? _httpClient.PostAsync("livros", content) : _httpClient.PutAsync("livros", content)); resposta.EnsureSuccessStatusCode(); if (resposta.StatusCode != System.Net.HttpStatusCode.Created && resposta.StatusCode != System.Net.HttpStatusCode.OK) { throw new InvalidOperationException(resposta.Content.ReadAsStringAsync().Result); } }
public IActionResult Incluir([FromBody] LivroUpload model) { if (ModelState.IsValid) { var livro = model.ToLivro(); _repo.Incluir(livro); var uri = Url.Action("Recuperar", new { id = livro.Id }); return(Created(uri, livro)); //Cod. 201 -> retorna que o recurso foi criado } return(BadRequest()); }
public IActionResult Incluir([FromBody] LivroUpload model) // O fromBody indica que a requisição chega pelo Body { if (ModelState.IsValid) { var livro = model.ToLivro(); _repo.Incluir(livro); var uri = Url.Action("Recuperar", new { id = livro.Id }); return(Created(uri, livro)); //Codigo status 201 } return(BadRequest()); //Erro 400 }
public IActionResult Incluir([FromBody] LivroUpload model) { if (ModelState.IsValid) { var livro = model.ToLivro(); _repo.Incluir(livro); var uri = Url.Action("Recuperar", new { id = livro.Id }); return(Created(uri, livro)); //201 } return(BadRequest(ErrorResponse.FromModelState(ModelState))); }
public IActionResult Incluir([FromForm] LivroUpload model) { if (ModelState.IsValid) { var livro = model.ToLivro(); _repo.Incluir(livro); var uri = Url.Action("Recuperar", new { id = livro.Id }); return(Created(uri, livro)); } return(BadRequest()); }
public async Task PutLivroAsync(LivroUpload livro) { AddBearerToken(); HttpContent content = CreateMultipartContent(livro.ToLivro()); var resposta = await _httpClient.PutAsync("livros", content); resposta.EnsureSuccessStatusCode(); if (resposta.StatusCode != System.Net.HttpStatusCode.OK) { throw new InvalidOperationException("Código de Status Http 200 esperado!"); } }
public static Livro ToLivro(this LivroUpload model) { return(new Livro { Id = model.Id, Titulo = model.Titulo, Subtitulo = model.Subtitulo, Resumo = model.Resumo, Autor = model.Autor, ImagemCapa = model.Capa.ConvertToBytes() }); }
public IActionResult Incluir([FromForm][SwaggerParameter("Um objeto contendo o autor, titulo, subtitulo e lista a ser adicionado")] LivroUpload model) { if (ModelState.IsValid) { var livro = model.ToLivro(); _repo.Incluir(livro); var uri = Url.Action("Recuperar", new { id = livro.Id }); return(Created(uri, livro)); } return(BadRequest(ErrorResponse.FromModelState(ModelState))); }
public IActionResult Incluir([FromForm][SwaggerParameter("Livro a ser incluido.")] LivroUpload model) { if (ModelState.IsValid) { var livro = model.ToLivro(); _repo.Incluir(livro); var uri = Url.Action("Recuperar", new { id = livro.Id }); return(Created(uri, livro.ToApi())); // 201 } return(BadRequest(ErrorResponse.FromModelState(ModelState))); // 400 }
public async Task PostLivroAsync(LivroUpload model) { AddBearerToken(); HttpContent content = CreateMultipartFormDataContent(model); var resposta = await _httpClient.PostAsync("livros", content); try { resposta.EnsureSuccessStatusCode(); } catch (Exception ex) { throw; } }
public IActionResult Post([FromForm] LivroUpload livroUpload) { if (ModelState.IsValid) { var livro = livroUpload.ToLivro(); _repository.Incluir(livro); return(CreatedAtRoute( routeName: "GetLivro2", routeValues: new { id = livro.Id }, value: livro)); } return(BadRequest(ErrorResponse.CreateFromModelState(ModelState))); }
public IActionResult Detalhes(LivroUpload model) { if (ModelState.IsValid) { var livro = model.ToLivro(); if (model.Capa == null) { livro.ImagemCapa = _repo.All .Where(l => l.Id == livro.Id) .Select(l => l.ImagemCapa) .FirstOrDefault(); } _repo.Alterar(livro); return(RedirectToAction("Index", "Home")); } return(View(model)); }
public IActionResult Alterar([FromForm][SwaggerParameter("Livro a ser alterado.")] LivroUpload model) { if (ModelState.IsValid) { var livro = model.ToLivro(); if (model.Capa == null) { livro.ImagemCapa = _repo.All .Where(l => l.Id == livro.Id) .Select(l => l.ImagemCapa) .FirstOrDefault(); } _repo.Alterar(livro); return(Ok()); // 200 } return(BadRequest(ErrorResponse.FromModelState(ModelState))); }
public IActionResult Alterar([FromForm] LivroUpload model) { if (ModelState.IsValid) { var livro = model.ToLivro(); if (model.Capa == null) { livro.ImagemCapa = _repo.All .Where(l => l.Id == livro.Id) .Select(l => l.ImagemCapa) .FirstOrDefault(); } _repo.Alterar(livro); return(Ok()); } return(BadRequest()); }
public IActionResult Alterar([FromForm][SwaggerParameter("Um objeto contendo o autor, titulo, subtitulo e lista a ser alterado")] LivroUpload model) { if (ModelState.IsValid) { var livro = model.ToLivro(); if (model.Capa == null) { livro.ImagemCapa = _repo.All .Where(l => l.Id == livro.Id) .Select(l => l.ImagemCapa) .FirstOrDefault(); } _repo.Alterar(livro); return(Ok()); } return(BadRequest()); }
public IActionResult Incluir([FromBody] LivroUpload model) { if (ModelState.IsValid) { var livro = model.ToLivro(); _repo.Incluir(livro); var uri = Url.Action("Recuperar", new { id = livro.Id }); //criando uma URL a partir de uma action de um controler. O primeiro argumento é a action e o segundo é o identificador do objeto na base de dados return(Created(uri, livro)); //código 201 /** * Retornando um objeto, após a conclusão de sua operação */ } return(BadRequest()); //requisição inválida (error 400) }