我正在使用DataSets,特别是使用DataRows数组:
我的问题是,如何在不使用LINQ的情况下执行DataRow []的联合/交叉?
答案 0 :(得分:3)
就个人而言,我是通过在表之间使用Relations来实现的。
答案 1 :(得分:3)
答案 2 :(得分:3)
只需为其编写代码:
//Assumes setA and setB are unique internally
public DataRow[] GetUnionRows(DataRow[] setA, DataRow[] setB){
List<DataRow> resultList = new List<DataRow>(setA);
foreach (DataRow row in setB){
if (!Contains(setA, row)){
resultList.add(row);
}
}
return resultList.toArray();
}
private bool YourEquals(DataRow a, DataRow b){
//Whatever
}
private bool Contains(DataRow[] setA, DataRow b){
foreach(DataRow a in setA){
if (YourEquals(a,b)){
return true;
}
}
return false;
}