如何简单地比较元素名称中的两个xml文件。 如果任何元素名称不匹配,则应返回true,否则返回false。 我正在使用
var matches = from a in file1.Element("in_mind").Descendants()
join b in file2.Element("in_mind").Descendants() on a.Name equals b.Name
select new { First = a, Second = b };
foreach (var n in matches)
if(n.First.ToString().Intersect(n.Second.ToString()).Count()>0)
{
}
else
{
MessageBox.Show("not matched");
return;
}
但它没有检查元素名称..
答案 0 :(得分:1)
也许是这样的?从两个文件中获取所有后代的名称,并检查它们是否相同。我不知道这是不是你想做的。
var elements1=(from e in file1.Element("in_mind").Descendants() select e.Name).ToList();
var elements2=(from e in file2.Element("in_mind").Descendants() select e.Name).ToList();
for(int i=0;i<elements1.Count;i++)
{
if(elements1[i]!=elements2[i])
{
return false;
}
}
return true;