Ho due tabelle, Categorie e Articoli.
Il risultato che voglio ottenere è questo:
Categoria 1
- Articolo 1
- Articolo 2
- Articolo 3
Categoria 2
- Nessun articolo inserito
Categoria 3
- Articolo 4
- Articolo 5
Il codice che uso è questo:
Dim comm2 As New System.Data.OleDb.OleDbCommand()
comm2.CommandText = "SELECT *FROM Categorie order by Ordine;"
Dim objReaderXML As OleDbDataReader = comm2.ExecuteReader()
Dim Categoriaa As String
Dim IdCategoria As Integer
While objReaderXML.Read
Categoriaa = objReaderXML.Item("Categoria")
IdCategoria = objReaderXML.Item("IDCategoria")
Dim commArt As New System.Data.OleDb.OleDbCommand()
commArt.CommandText = "SELECT * FROM Articoli WHERE IdCategoria= @IdCategoria"
commArt.Parameters.AddWithValue("@Idcategoria", IdCategoria)
Dim objReaderXML2 As OleDbDataReader = commArt.ExecuteReader()
Dim Articolo As String
If Not objReaderXML2.Read Then
response.write("No articoli")
Else
While objReaderXML2.Read
Articolo = objReaderXML2.Item("Articolo")
End While
End If
End While
======================================================================
Se tolgo il controllo dell'objreaderxml2.read ovviamente non mi scriverà mai "nessun articolo", se al contrario lo lascio invece mi viene saltato il primo articolo di ogni categoria..
mi sa che mi sto perdendo in un bicchiere d'acqua!
