A: 

have you tried using the Include() statement? I think it would look something like this

var detallesContenido =
       from contenido in guiaContext.Contenido.Include("DetalleContenido")
          where contenido.PuntoInteres.id_punto == puntoInteresID
       from dc in contenido.DetalleContenido
          where dc.Idioma.ds_idioma == idiomaCliente
      select dc;
Tion
Yes, but it doesn't work.
VansFannel
+1  A: 

You can also do

.Load()

on the "reference" properity of the selected object (when you are using them).

But as for your query, it seems your Archivo table is a 1 to many and you cannot "include" or "load" the "many" side of the equasion. You would have to do a "select dc.Archivo" I would think.

JasonRShaver
You are right. I use select new {dc, dc.Archivo} to obtain the table Archivo.
VansFannel
A: 

how about:

var detallesContenido =
  from contenido in guiaContext.Contenido
      where contenido.PuntoInteres.id_punto == puntoInteresID && contenido.DetalleContenido.Any(c=>c.Idioma.ds_idioma == idiomaCliente)
  select contenido.DetalleContenido;
Tion
I want to retrieve DetalleContenido AND Archivo.
VansFannel
A: 

My solution is this:

var detallesContenido =
   from contenido in guiaContext.Contenido
      where contenido.PuntoInteres.id_punto == puntoInteresID
   from detalleContenido in contenido.DetalleContenido
      where detalleContenido.Idioma.ds_idioma == idiomaCliente
   select new { detalleContenido, detalleContenido.Archivo };

Thank you!

VansFannel