0

Hi all,

I am trying to grab data from the database that this application is connecting to and then show entries in a treeview.

public void dbcall() 
        { 
            SqlConnection sqlconn = new SqlConnection("user id=USERNAME;" + "password=PASSWORD;server=SERVER;" + "database=DBNAME;" + "connection timeout=30"); 
            SqlCommand select = new SqlCommand("SELECT * from MAIN", sqlconn); 
            sqlconn.Open(); 
            SqlDataReader reader = select.ExecuteReader(); 
            DataSet ds = new DataSet(); 
            DataTable dt = new DataTable("MainTable"); 
            ds.Tables.Add(dt); 
            ds.Load(reader, LoadOption.PreserveChanges, ds.Tables[0]); 
 
            sqlconn.Close(); 
 
            foreach (DataRow dr in dt.Rows) 
            { 
 
                //////////// 
 
 
 
            } 
 
        }

The data that I am getting out of the database looks like this:


ID Hostname Username Software
1 host1 user1 sw1
2 host1 user1 sw2
3 host1 user1 sw3
4 host1 user1 sw4
5 host5 user5 sw1
6 host5 user5 sw2
7 host5 user5 sw3
8 host5 user5 sw5
9 host9 user9 sw1
10 host10 user10 sw1


I need the data to be displayed in the tree as follows, though nothing that I have done so far has been able to do it:

host1>user1>sw1
sw2
sw3
sw4
host5>user5>sw1
sw2
sw3
sw5

Any help with this would be appreciated. Thanks in advance.

2
Contributors
2
Replies
5
Views
8 Years
Discussion Span
Last Post by nlblnx
0

Not sure what part you have trouble with.
The concept would be loop through the results and add unique hosts to a list or hashtable and add the user to a list and each software to a list.
Then loop through the hosts, for each user in the host, for each user get software.

Create a tree node for each host, user, and software
set the child nodes of user equal to software, child nodes of host to user

0

Not sure what part you have trouble with.
The concept would be loop through the results and add unique hosts to a list or hashtable and add the user to a list and each software to a list.
Then loop through the hosts, for each user in the host, for each user get software.

Create a tree node for each host, user, and software
set the child nodes of user equal to software, child nodes of host to user

Hi,

I know what it needs to do, just can't get it to act that way. I couldn't figure out how to get the individual hosts listed and then the users, then the software as children.

The closest I've gotten is a list of all entries, so in reality about 200 of the same host with different users and software.

Any ideas?

This topic has been dead for over six months. Start a new discussion instead.
Have something to contribute to this discussion? Please be thoughtful, detailed and courteous, and be sure to adhere to our posting rules.