关于DataSet对象的Merge方法
如下代码:
DataSet testDSA = new DataSet("TestDataSet");
DataTable testDT = new DataTable("student");
testDSA.Tables.Add(testDT);
DataColumn testDC;
testDC = new DataColumn();
testDC.DataType = Type.GetType("System.Int32");
testDC.ColumnName = "ID";
testDT.Columns.Add(testDC);
testDC = new DataColumn();
testDC.DataType = Type.GetType("System.String");
testDC.ColumnName = "Name";
testDT.Columns.Add(testDC);
testDC = new DataColumn();
testDC.DataType = Type.GetType("System.String");
testDC.ColumnName = "School";
testDT.Columns.Add(testDC);
DataRow testDR = testDT.NewRow();
testDR["ID"] = 1;
testDR["Name"] = "Rose";
testDR["School"] = "SCUT";
testDT.Rows.Add(testDR);
testDR = testDT.NewRow();
testDR["ID"] = 2;
testDR["Name"] = "Coke";
testDR["School"] = "SCNU";
testDT.Rows.Add(testDR);
testDSA.AcceptChanges();
testDSB = new DataSet();
DataTable testDT1 = testDT.Clone();
testDR = testDT1.NewRow();
testDR[0] = 8;
testDR[1] = "Clin";
testDR[2] = "SCNU";
testDT1.Rows.Add(testDR);
testDR = testDT1.NewRow();
testDR[0] = 9;
testDR[1] = "Lize";
testDR[2] = "SCUT";
testDT1.Rows.Add(testDR);
testDSB.Tables.Add(testDT1);
testDSA.Merge(testDSB);
最后的结果是两个DataSet成功的合并。
问题:在合并时,testDSA如何知道将testDSB中testDT1的数据添加到其testDT中?
也就是说,它是如何知道我是要将这两个表中的内容合并到一起,而不会错误的与DataSet中的其他表合并?
如下代码:
DataSet testDSA = new DataSet("TestDataSet");
DataTable testDT = new DataTable("student");
testDSA.Tables.Add(testDT);
DataColumn testDC;
testDC = new DataColumn();
testDC.DataType = Type.GetType("System.Int32");
testDC.ColumnName = "ID";
testDT.Columns.Add(testDC);
testDC = new DataColumn();
testDC.DataType = Type.GetType("System.String");
testDC.ColumnName = "Name";
testDT.Columns.Add(testDC);
testDC = new DataColumn();
testDC.DataType = Type.GetType("System.String");
testDC.ColumnName = "School";
testDT.Columns.Add(testDC);
DataRow testDR = testDT.NewRow();
testDR["ID"] = 1;
testDR["Name"] = "Rose";
testDR["School"] = "SCUT";
testDT.Rows.Add(testDR);
testDR = testDT.NewRow();
testDR["ID"] = 2;
testDR["Name"] = "Coke";
testDR["School"] = "SCNU";
testDT.Rows.Add(testDR);
testDSA.AcceptChanges();
testDSB = new DataSet();
DataTable testDT1 = testDT.Clone();
testDR = testDT1.NewRow();
testDR[0] = 8;
testDR[1] = "Clin";
testDR[2] = "SCNU";
testDT1.Rows.Add(testDR);
testDR = testDT1.NewRow();
testDR[0] = 9;
testDR[1] = "Lize";
testDR[2] = "SCUT";
testDT1.Rows.Add(testDR);
testDSB.Tables.Add(testDT1);
testDSA.Merge(testDSB);
最后的结果是两个DataSet成功的合并。
问题:在合并时,testDSA如何知道将testDSB中testDT1的数据添加到其testDT中?
也就是说,它是如何知道我是要将这两个表中的内容合并到一起,而不会错误的与DataSet中的其他表合并?
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货