Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Desafio: hora da prática - Atividade 04

Program.cs

using System.Text.Json;
using Livraria.Modelos;

Console.Clear();
using (HttpClient client = new()) {
    try {
        var response = await client.GetStringAsync("https://raw.githubusercontent.com/ArthurOcFernandes/Exerc-cios-C-/curso-4-aula-2/Jsons/Livros.json");
        var listaLivros = JsonSerializer.Deserialize<List<Livro>>(response);
        listaLivros!.ForEach(l => l.ExibirDetalhes());

    }
    catch (Exception ex) {
        Console.WriteLine($"Um erro foi encontrado na requisição: {ex}");
    }
}

Livro.cs

using System.Text.Json.Serialization;

namespace Livraria.Modelos;
class Livro {

    [JsonPropertyName("titulo")]
    public string? Titulo {get;set;}

    [JsonPropertyName("autor")]
    public string? Autor {get;set;}

    [JsonPropertyName("ano_publicacao")]
    public int AnoPublicacao {get;set;}

    [JsonPropertyName("genero")]
    public string? Genero {get;set;}

    [JsonPropertyName("paginas")]
    public int Paginas {get;set;}

    [JsonPropertyName("editora")]
    public string? Editora {get;set;}

    public void ExibirDetalhes() {
        Console.WriteLine();
        Console.WriteLine($"Nome do livro {Titulo}");
        Console.WriteLine($"Autor: {Autor}");
        Console.WriteLine($"Ano de publicação: {AnoPublicacao}");
        Console.WriteLine($"Gênero: {Genero}");
        Console.WriteLine($"Páginas: {Paginas} páginas.");
        Console.WriteLine($"Editora: {Editora}");
        Console.WriteLine();
    }
}
1 resposta
solução!

Oi Diego, tudo bem?

Meus parabéns pela resolução do desafio! Ficou muito legal ver como você aplicou o HttpClient para consumir a API e utilizou corretamente o JsonSerializer para transformar esses dados em objetos da sua classe Livro.

A estrutura do seu código está bem organizada, especialmente com o uso do try-catch para tratar possíveis erros de requisição, o que é uma excelente prática no mundo real. Continue com esse empenho e dedicação.

Bons estudos!

Sucesso

Imagem da comunidade