2009-12-08 63 views
1

我與數據集時,特別是與數據行的一個數組:數據集操作

我的問題是,我怎麼能夠在不使用LINQ執行工會的DataRow []的中/相交?

回答

3

就我個人而言,我通過在表格之間使用Relations來完成。

+0

這真的取決於FK關係是否是實際的數據庫他從閱讀上。手動定義它們真的很痛苦。 – 2009-12-08 22:12:33

3

使用Relations

+0

是的。我所說的...我會爲此投票。 – David 2009-12-08 21:52:17

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; 
    } 
+0

這也是一個好消息。 – David 2009-12-08 21:53:14