Набор данных содержит таблицы.В приведенном выше примере, если у вас было два SqlDataAdapter, каждый из которых вызывал хранимую процедуру и сохранял их так же, как вы это делали выше.
adapter1.Fill(DS, "Table1");
adapter2.Fill(DS, "Table2");
Это позволит получить результаты таблицы из первого запроса и сохранить их в DataSet DSкак Таблица1.Затем он будет хранить другую таблицу (Table2) в том же наборе данных.Для доступа к этим таблицам вы используете следующий код:
DS.Tables["Table1"] //Or Table2, or whatever you name it during your Fill.
У вас уже есть правильный процесс, вам просто нужно посмотреть, как работает DataSet и решить, как вы хотите вызвать вашу информацию.
Однако, если вы хотите объединить свои результаты в одну таблицу данных, вам нужно будет перебирать таблицы и объединять информацию.
ex:
DataTable combinedTable = new DataTable();
//Create columns
foreach (DataRow row in DS.Tables["Table1"].Rows)
{
//Create rows? Copy information over? Whatever you want to do.
}