1
resposta

Linq complexo entre objetos que contenha uma lista

Boa Noite

tenho um objeto listado a seguir:

List<Artista> artistas = GetListaDeArtistas();

Artista é representado por:

public int Id {get;set;}
public string Nome {get;set;}
public List<Musica> Musicas {get;set;}

o Objeto música é representado por

public int Id {get;set;}
public string Nome {get;set;}

Como posso fazer uma consulta retornando as músicas e os Artitas? Se fosse em Sql eu faria:

Select * from Artistas
    join Musica on Musica.Id =Artistas.MusicaId

Como posso fazer em Linq?

1 resposta

Ficaria algo assim parecido:

List<Artista> resultado = artistas.Where(s => s.Musicas.Any(m => m.Id == IdMusicaProcurada)).ToList();

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software