返回C#2005中的多个DataTable

本文关键字:DataTable C#2005 返回 | 更新日期: 2023-09-27 18:22:08

我在一个类中有表1和表2。。

public DataTable sampletable (DataTable table1,DataTable table2)
{
     // How to return the two table(table1 and table2)
}

提前感谢

返回C#2005中的多个DataTable

public DataTable[] sampletable (DataTable table1,DataTable table2) 
{ 
    return new DataTable[] { table1, table2 };
} 

使用数组。检索特定的表:

DataTable[] dtArray = sampletable (YourFirstDt, YourSecondDt);
DataTable table1 = dtArray[0];
DataTable table2 = dtArray[1];

假设它们具有相同的模式,则可以使用DataTable.Merge Method

public DataTable sampletable(DataTable table1, DataTable table2) 
{ 
    table1.Merge(table2);
    return table1;
} 

Merge方法用于合并具有基本相似的模式。合并通常用于客户端将数据源的最新更改合并到的应用程序现有的DataTable。这允许客户端应用程序具有使用数据源中的最新数据刷新了DataTable。

合并操作只考虑原始表要合并的表。子表不受影响或不包括在内。如果表具有被定义为关系的一部分的一个或多个子表,每个子表必须单独合并。

将新的源DataTable合并到目标中时,任何源行DataRowState值为Unchanged、Modified或Deleted的与具有相同主键值的目标行匹配。源行DataRowState值为Added的行与具有的新目标行匹配与新源行相同的主键值。

您可以使用DataSet,创建一个新的DataSet并将多个表添加到其中,例如

DataSet Ds = new DataSet();
DataTable Dt1= new DataTable();
Ds.Tables.Add(Dt1)

您可以添加多个表,并且要访问数据表,您可以使用索引(例如-Ds.Tables[0])希望这能回答你的问题!!。

public DataSet Getdatasettables()
{
 DataSet ds = new DataSet();
 DataTable dt1 = new DataTable();
 DataTable dt2 = new DataTable();
 ds.Tables.Add(dt1);
 ds.Tables.Add(dt2);
 return ds;
}