dna
dna

Reputation: 483

Inserting records from datatable into list

I am using datatable to retrieve 1000 records from mysql database. I want to copy each record as it is to list. But I do not know the exact syntax for that.

Here is the following code I am trying to retrieve:

cmdmysql.CommandText = "select * from marctest.spectrum";
conn.Open();

MySqlDataAdapter da = new MySqlDataAdapter(cmdmysql.CommandText, conn);
//MySqlDataReader reader;
DataTable dt = new DataTable();
da.Fill(dt);

dataGridView1.DataSource = dt;
dataGridView1.DataMember = dt.TableName;

// row = dataGridView1.DataSource.ToString();
//row = dt.TableName;
MySqlDataReader reader;
reader = cmdmysql.ExecuteReader();

List<string> mylist = new List<string>();

foreach(DataRow row1 in dt.Rows)
{
    mylist.Add(dt.Rows.ToString());
}

textBox1.Text = mylist.ToString();

Does anybody have an idea regarding the same? This is my actual code...

Upvotes: 0

Views: 2527

Answers (2)

C-Pound Guru
C-Pound Guru

Reputation: 16368

I'm not sure that doing DataRow.ToString() is going to get you anything useful (most likely just the object type).

If you want the data from each row as a string (perhaps tab-delimited?), you can try:

foreach(DataRow row1 in dt.Rows) {
   StringBuilder sb = new StringBuilder();
   foreach(DataColumn col in dt.Columns) {
      sb.Append(row1[col].ToString();
      sb.Append('\t');
   }
   mylist.Add(sb.ToString());
}

This will croak, if any of your column's have a null value so you may want to handle that.

Upvotes: 2

Tamer Shlash
Tamer Shlash

Reputation: 9523

Assuming that dt is the query result, and If you only need to convert these results to strings, then this should work:

foreach(DataRow row1 in dt.Rows)
    mylist.Add(row1.ToString();

Upvotes: -1

Related Questions