c# Linq 将 xelement 与字符串进行比较

c# Linq Compare xelement with string

我需要将 XElement 与 foreach 中的字符串进行比较,但由于某种原因无法正常工作...

这是我的 C# 代码

string ID = test;
XDocument xmlFile = XDocument.Load(_file);
var query = from c in xmlFile.Elements("Root").Elements("user") select c;
int i = 0;
foreach (XElement utilizador in query)
{
    if (i == 0 && utilizador.Attribute("done").Value != "0" && 
                           utilizador.DescendantNodes().ToString().Contains(id))
    {
        utilizador.Attribute("done").Value = "0";
        i++;
    }
}
xmlFile.Save(_file);

出于某种原因我不知道 utilizador.DescendantNodes().ToString().Contains(id) 对我不起作用 谢谢。

改用:

utilizador.DescendantNodes().Any(x=>x.Value.Contains(id))