Disculpa, pero no me dejaba poner el codigo completo, me imagion por tener codigo tipo SQL y por seguridad de la pagina

: Va de nuevo
Hola que tal, bueno tratare de explicarte lo mejor que pueda
1.- Declaras una o varias listas ( List<EstructList> alias = new List<EstructList>();) // No entrare en mucho detalle sobre esto

)
2.- Llenas la lista con la consulta que ocupas
Inicia lo bueno
3.- Declaras una variable y pones la consulta que ocupas.
Ejemplo:
Código C#:
Ver original// Consulta sencilla
var Query = (fr om alias in lista_previamente_creada
o rderby alias.campo_ordenar // Opcional
sel ect alias).D istinct();
// Con un join de listas
var Query = ( fr om alias1 in lista_previamente_creada_1
j oin alias2 in lista_previamente_creada_2 on alias1.campo_en_comun equals alias2.campo_en_comun
in to a
fr om b in a.DefaultIfEmpty(new Estructura_lista_2())
s elect new
{
alias1.campo1,
alias1.campo2,
b.campo3,
b.campo4
}
).Distinct();
4.- Ya que tienes la información en tu variable ( Query en este caso ), la barres con un foreach.
Ejemplo:
Código C#:
Ver originalforeach (var Mostrar in Query)
{
Grid.Rows.Add(1);
Grid.Rows[nRenglon].Cells["1"].Value = Mostrar.campo1.ToString();
Grid.Rows[nRenglon].Cells["2"].Value = Mostrar.campo2.ToString();
}
Ocupas tener en la cabecera el using System.Linq;
Linq solo funciona con Framework 3.5
Espero haberte ayudado