1
resposta

[Projeto] Solução da atividade

segue a minha solução para a atividade proposta, um adendo, como eu não estava consumindo a API pela web(problemas pessoais de internet) baixei o json e coloquei no projeto para consumir seus dados. (um orgulho por essa solução.)

1º Passo: Criar propriedade Ano no modelo Musicas.cs


namespace SreenSound_4.Modelos;
internal class Musica {
(...)
[JsonPropertyName("year")]
public string? Ano {get; set; }
}

2º Passo: foi realizar o Filtro pelo ano:


   public static void MusicasPorAno(List<Musica> musica, string ano)
    {
        var anoMusica = musica.Where(musica => musica.Ano!.Equals(ano)).ToList();
        Console.WriteLine($"As musicas Lançadas no ano de {ano} são:");
        foreach (var musicasDoAno in anoMusica)
        {
            Console.WriteLine($"Música: {musicasDoAno.Nome}\nArtista: {musicasDoAno.Artista}\n");
        }

    }
}

3º Passo Testar sua funcionalidade no program.cs: ``` string JsonString = File.ReadAllText(JsonRoute); try { var musica = JsonSerializer.Deserialize<List>(JsonString)!; //musica[1998].ExibirDetalhesMusica(); //LinqFilter.FiltroGeneroMusical(musica); //LinqOrder.OrdenarArtistasOrdem(musica); //LinqFilter.FiltroArtistaPorGeneroMusical(musica, "rock"); //LinqFilter.FiltroMusicasDoArtista(musica, "U2"); LinqFilter.MusicasPorAno(musica, "2006"); } catch (Exception ex) { Console.WriteLine(ex.Message); }


1 resposta

Oi Paulo, tudo bem?

Parabéns pela solução e por compartilhar seu código! É incrível ver como você implementou a funcionalidade de filtrar músicas por ano, especialmente com o uso do LINQ em C#.

A inclusão da propriedade Ano no modelo Musica e a subsequente filtragem são passos bem estruturados. Além disso, a organização do código no arquivo program.cs para testar a funcionalidade mostra uma abordagem clara e modular.

Continue assim, explorando e desenvolvendo suas habilidades em C# e LINQ.

Um abraço e bons estudos.