DataSet ds2 = (DataSet)res2.Anything;
// 检查 集合B是否为集合A的子集
var table1MaterialCodes = ds.Tables[2].AsEnumerable().Select(row => row["Code"]).ToList(); //DataSet1 表Code列集合A
var table2MaterialCodes = ds2.Tables[0].AsEnumerable().Select(row => row["MaterialCode"]).ToList(); //DataSet2 表MaterialCode列集合B
bool isSubset = table2MaterialCodes.All(code => table1MaterialCodes.Contains(code)); //判断集合B是否为集合A的子集
if (!isSubset)
{
var missingMaterialCodes = table2MaterialCodes.Where(code => !table1MaterialCodes.Contains(code)).ToList();
StringBuilder msg = new StringBuilder();
foreach (var code in missingMaterialCodes)
{
// msg.Append(",");
msg.Append(code);
msg.Append("。");
}
msg.Append("显示集合B不在集合A的数据");
ShowMessage(msg.ToString(), false);
return;
}
}
LINQ (
Language Integrated Query
): LINQ是.NET框架的一部分,它提供了一种查询各种数据源(如数组、集合、XML文档和数据库)的能力,就像查询SQL数据库一样。这里使用的是LIN