Как хранить несколько DataTables в один DataSet в C #? - PullRequest
6 голосов
/ 03 октября 2011

У меня есть код ниже, который имеет несколько DataTables с результатами, и мне нужно передать один DataSet со всеми значениями DataTable.

MySqlCommand cmd = new MySqlCommand(getLikeInfo, con);
MySqlDataAdapter da = new MySqlDataAdapter(cmd);
DataTable dt = new DataTable();
da.Fill(dt);

MySqlCommand cmd1 = new MySqlCommand(getKnowInfo, con);
MySqlDataAdapter da1 = new MySqlDataAdapter(cmd1);
DataTable dt1 = new DataTable();
da1.Fill(dt1);

MySqlCommand cmd2 = new MySqlCommand(getHotelInfo, con);
MySqlDataAdapter da2 = new MySqlDataAdapter(cmd2);
DataTable dt2 = new DataTable();
da2.Fill(dt2);

MySqlCommand cmd3 = new MySqlCommand(getRoomInfo, con);
MySqlDataAdapter da3 = new MySqlDataAdapter(cmd3);
DataTable dt3 = new DataTable();
da3.Fill(dt3);

MySqlCommand cmd4 = new MySqlCommand(getFoodInfo, con);
MySqlDataAdapter da4 = new MySqlDataAdapter(cmd4);
DataTable dt4 = new DataTable();
da4.Fill(dt4);

Как я могу это сделать?

1 Ответ

9 голосов
/ 03 октября 2011
DataSet ds = new DataSet();
ds.Tables.Add(dt);
ds.Tables.Add(dt1);
...

Если вы хотите, чтобы ваши таблицы были названы в DataSet, вы можете создать свои таблицы из DataSet

DataSet ds = new DataSet();
DataTable t1 = ds.Tables.Add("t1");  // Create
DataTable t1Again = ds.Tables["t1"]; // fetch by name

Вы также можете установить свойство TableName таблиц, если используете первый подход.

...