c# - How to loop through database table to add data in datagrid? -
i have code read database table datagrid runs once , adds top row datagrid database. there way can run multiple times read data different rows , add in datagrid.
public static void adddata( datagrid datagrid) { sqlconnection connect = getconnection(); sqlcommand command = new sqlcommand(); command.connection = connect; //connect database connect.open(); command.commandtext = "select req_status th_request req_status = 'n'"; command.executenonquery(); status = (string)command.executescalar(); connect.close(); connect.open(); command.commandtext = "select req_date_time th_request req_status = 'n'"; command.executenonquery(); time = (datetime)command.executescalar(); connect.close(); connect.open(); command.commandtext = "select resp_user_name th_request req_status = 'n'"; command.executenonquery(); locationname = (string)command.executescalar(); connect.close(); collection.add(new dataobject() { = time, b = locationname, c = status, d = respusername }); datagrid.itemssource = collection; }
you should have execute single command once. example use sqldatareader create dataobject each row returned query:
public static void adddata(datagrid datagrid) { collection.clear(); using (sqlconnection connection = getconnection()) { using (sqlcommand command = new sqlcommand("select req_status, req_date_time, resp_user_name th_request req_status = 'n'", connection)) { connection.open(); using (sqldatareader reader = command.executereader()) { while (reader.read()) { collection.add(new dataobject() { = convert.todatetime(reader["req_date_time"]), b = convert.tostring(reader["resp_user_name"]), c = convert.tostring(reader["req_status"]), d = respusername }); } } } } datagrid.itemssource = collection; }
Comments
Post a Comment