Hola elchuri2002, me acabo de enterar ahora de tu mensaje perdon por la tardanza en contestar, por supuesto encantado te paso el codigo
Primero te paso el codigo .aspx donde se visualizan los resultados
Código:
<asp:Repeater id="parentRepeater" runat="server">
<itemtemplate>
<p><%#DataBinder.Eval(Container.DataItem,"nombre1")%></p>
<!--Metemos un elemento repeater para cada elemento-->
<asp:Repeater id="childRepeater" runat="server" datasource='<%#Container.DataItem.Row.GetChildRows("myrelation")%>'>
<HeaderTemplate>
<table>
<tr>
<th>
Codigo
</th>
<th>
Nombre
</th>
</tr>
</HeaderTemplate>
<itemtemplate>
<tr>
<th>
<%#Container.DataItem("codigo")%>
</th>
<th>
<%#Container.DataItem("nombre")%>
</th>
</tr>
</itemtemplate>
</asp:Repeater>
</table>
<br/><br/>
</itemtemplate>
</asp:Repeater>
Hasta aqui el codigo aspx. Lo unico asi que se pueda destacar es la relaccion "myrelation" para enlazar varias tablas, este repeater anidado en concreto toma valores de dos tablas diferentes.
Ahora el codigo perteneciente al archivo vb.
Código:
'hacemos un comamndo para coger los datos de la primera tabla recuerda que utilizamos dos tablas. Hay que tener en cuenta que el campo CAMPO EN TABLA2 Y CAMPO EN TABLA1 TIENEN EL MISMO VALOR POR ESO SE UTILIZAM COMO DATO PARA RELACIONAR
Dim cmd1 As SqlDataAdapter = New SqlDataAdapter("SELECT DISTINCT tabla1.nombre1, tabla1.campo from tabla1 INNER JOIN tabla2 ON tabla1.campo=tabla2.campo, cnn)
'creamos un dataset para coger los datos
Dim ds As DataSet = New DataSet()
cmd1.Fill(ds, "datos1")
'hacemos otro comando para coger los datos de la segunda tabla
Dim cmd2 As SqlDataAdapter = New SqlDataAdapter("SELECT * FROM tabla2 WHERE, cnn)
'cargamos los datos en el mismo dataset
cmd2.Fill(ds, "datos2")
'añadimos la relaccion entre las dos tablas
ds.Relations.Add("myrelation", ds.Tables("tabla1").Columns("campo"), ds.Tables("tabla2").Columns("campo"))
parentRepeater.DataSource = ds.Tables("tabla1")
Page.DataBind()
cnn.Close()
Bueno esto es todo. Espero que el codigo se entienda medianamente, he intentado ponerlo lo mas claro posible, no obstante si tienes alguna duda no dudes en consultarme. Mucha suerte y espero que te sirva de ayuda
Un saludo
Pinty