Linq to Entities muitos para muitos selecionar consulta

Eu estou perdido com a seguinte consulta, que é um amendoim em T-SQL simples.

Nós temos três tabelas físicas:

Banda (PK = BandId)MusicStyle (PK = MuicStyleId)BandMusicStyle (PK = BandId + MusicStyleId, FK = BandId, MusicStyleId)

Agora, o que estou tentando fazer é obter uma lista de MusicStyles que estão vinculados a uma Banda que contém uma determinada cadeia de pesquisa em seu nome. O nome da banda deve estar no resultado também.

O T-SQL seria algo assim:

SELECT b.Name, m.ID, m.Name, m.Description
FROM Band b 
INNER JOIN BandMusicStyle bm on b.BandId = bm.BandId
INNER JOIN MusicStyle m on bm.MusicStyleId = m.MusicStyleId
WHERE b.Name like '%@searchstring%'

Como eu escreveria isso no Linq To Entities?

PS: O StackOverflow não permite uma busca na string 'many to many' por alguma razão bizar ...

questionAnswers(4)

yourAnswerToTheQuestion