【发布时间】:2016-01-14 13:53:38
【问题描述】:
在不同的服务器上有 2 个同名的相同表。假设 Table1 和 Table2。我需要比较表格,如果有任何字段值不匹配,则必须报告。我正在使用 C# 和实体框架。 我能够检索表(记录集)的行,但我如何检查数据行的每个字段。两个表中的列数和列名相同且顺序相同。有这么几张桌子。 我需要从每个表中获取字段值并与另一个表中的相同字段进行比较。如何使用 EF 和 Linq 检索字段值。 如果它使用 EF 很复杂,是否有任何其他方法来访问表和比较字段值。
要执行的任务: 比较 Table1.Row[1]Column[2].value 与 Table2.Row[1]Column[2].value
var query1 = (from prod in con1.Products
select new { }).ToList();
var query2 = (from prod in con2.Products
select new { }).ToList();
for (int i = 0; i < query1.Count; i++)
{
Console.WriteLine(query1.GetType());
if (query1[i] != query2[i])
{
Console.WriteLine("Data not matching at");
}
}
【问题讨论】:
-
您应该自己尝试一下,如果遇到问题,请发布有错误的代码,我们可以帮助您。
-
感谢@BenClarke 的建议 query1 和 query2 包含数据行。但是当检查对象 query1/query2 时,您会看到匿名类型的数据。如何从 query1/query2 中检索数据。
标签: c# entity-framework linq data-comparison