2013-08-26 60 views
1

我想要做的是,通过datacontext循环,并找到每个表,选择两个不同的行,并比较各个列,看看行是否相等。通过datacontext表循环

到目前为止,我做了一个方法来比较两行的值,如果行的所有值相等,则返回true。

现在我希望把这种方法为沿线foreach环路下面概述:

using (DataClassesDataContext db = new DataClassesDataContext(Utillities.dbconnection)) 
{ 
    foreach (Table t in db) 
    { 
     var row1 = from r1 in t where r1.id == constraint1 select; 
     var row2 = from r2 in t where r2.id == constraint2 select; 

     bool compResult = CompareRows(row1, row2); 
    } 
} 

但我不知道如何构建foreach循环,这样我就可以做出上述选择: ( 我试过db.Mapping.GetTables(),但我不明白这是如何让我更接近 - 我只能得到datacontext中的表名,而不是表本身。是否有方法从包含字符串的表中获取表实体表名?还是我错过了一些东西(可能是明显的东西)?

任何帮助或暗示与上述foreach循环将不胜感激。

+0

旁注:你可以使用一个查询用'或'的这两个条件,并检查不同的结果是否包含1行。 –

回答