Linq a Entidades muchos a muchos seleccionan consulta

Estoy en una pérdida con la siguiente consulta, que es cacahuetes en T-SQL simple.

Tenemos tres tablas físicas:

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

Ahora, lo que estoy tratando de hacer es obtener una lista de los estilos musicales que están vinculados a una banda que contiene una determinada cadena de búsqueda en su nombre. El nombre de la banda debe estar en el resultado también.

El T-SQL sería algo como esto:

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%'

¿Cómo escribiría esto en Linq To Entities?

PD: StackOverflow no permite una búsqueda en la cadena 'muchos a muchos' por alguna razón extraña ...

Respuestas a la pregunta(4)

Su respuesta a la pregunta