Compte tenu de la structure de données simple:ASP.net convertir SqlDataReader en arbre
ID | Category_Name | Parent_ID
Exemple:
1 Cars 0
2 Boxes 0
3 Lamborghinis 1
4 Camper Vans 1
5 Big Boxes 2
6 Small Boxes 2
7 Cereal Boxes 2
8 Broken Lambos 3
9 Yellow Ones 3
10 Rusty 8
11 Milkshake Stained 8
12 Chocolate Flavour 11
13 Strawberry 11
14 Indiscernible Solution 11
Avec mon code:
// Fetch current site setting
using (SqlCommand cmd = new SqlCommand("SELECT ID, catName, parentID FROM tblProductCats ORDER BY parentID ASC", cn))
{
SqlDataReader rdr = cmd.ExecuteReader();
if (rdr.HasRows)
{
while (rdr.Read())
{
// Fetch data
int catID = int.Parse(rdr[0].ToString());
string catName = rdr[1].ToString();
int catParent = int.Parse(rdr[2].ToString());
}
}
}
je dois le convertir retourné des données dans une structure arborescente afin que je puisse passer à travers elle affichant le menu d'une manière jolie!
J'ai été bloqué sur cela pendant un moment toute aide appréciée.
Cela ressemble à une excellente réponse, mais j'ai du mal à savoir comment faire une boucle dans l'arbre du haut (niveau 0) vers le bas? Je suis probablement épais, mais je ne suis pas familier avec le dictionnaire –
ne jamais oublier im épais! Je pense que je peux y arriver, merci encore: D –
Manqué cette partie complètement. Réponse éditée pour avoir la propriété Category.Children. Notez que la mise en œuvre est simpliste et peut être améliorée. – VinayC