我有问题在1个数据集中添加多个表,我只能在1个数据集中加载1个表。我无法在1个数据集中获取customer表和item表。我哪里做错了?这是我第一次使用C#程序
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Xml.Linq;
using System.Data;
namespace DataSET
{
class Program
{
static void Main(string[] args)
{
GetCustDetail();
GetItemDetail();
}
public static void GetCustDetail()
{
DataSet dataSet = new DataSet();
DataTable cust_Table = new DataTable();
dataSet.ReadXml("CustDetail.xml", XmlReadMode.ReadSchema);
DataColumn cust_Column = cust_Table.Columns.Add("CustID", typeof(Int32));
cust_Column.AllowDBNull = false;
cust_Column.Unique = true;
cust_Table.Columns.Add("CustLName", typeof(String));
cust_Table.Columns.Add("Purchases", typeof(Double));
foreach (DataTable dataTable in dataSet.Tables)
cust_Table.BeginLoadData();
dataSet.ReadXml("CustDetail.xml");
foreach (DataTable dataTable in dataSet.Tables)
cust_Table.EndLoadData();
dataSet.Tables.Add(cust_Table);
dataSet.AcceptChanges();
}
public static void GetItemDetail()
{
DataSet dataSet = new DataSet();
DataTable item_Table = new DataTable();
dataSet.ReadXml("ItemDetail.xml", XmlReadMode.ReadSchema);
DataColumn item_Column = item_Table.Columns.Add("ItemID", typeof(Int32));
item_Column.AllowDBNull = false;
item_Column.Unique = true;
item_Table.Columns.Add("ItemName", typeof(String));
item_Table.Columns.Add("Decription", typeof(Double));
foreach (DataTable dataTable in dataSet.Tables)
item_Table.BeginLoadData();
dataSet.ReadXml("ItemDetail.xml");
foreach (DataTable dataTable in dataSet.Tables)
item_Table.EndLoadData();
dataSet.Tables.Add(item_Table);
dataSet.AcceptChanges();
}
}
}
答案 0 :(得分:0)
您没有在数据集上添加数据表..
您可以在数据集上添加数据表,如下所示:
DataSet ds = new DataSet();
DataTable dt1 = new DataTable();
DataTable dt2 = new DataTable();
ds.Tables.Add(dt1);
ds.Tables.Add(dt2);
希望有所帮助:)
答案 1 :(得分:0)
要添加多个表,您的两个数据表都具有相同的列名和相同的列号,请使用下面的代码:
DataSet ds = new DataSet();
ds.Tables.Add(Table1);
ds.Tables.Add(Table2);
ds.AcceptChanges();