LINQ to Xml不等于运算符

时间:2009-04-10 00:48:43

标签: c# xml linq

我正在使用LINQ to XML。我想在下面的<>子句中使用等效的sql where运算符....

var myBooks = from book in xDoc.Descendants("BOOKOB") 
              where book.Element("AUTHOR").Value 

请帮忙!

3 个答案:

答案 0 :(得分:8)

不是!=工作?

答案 1 :(得分:3)

正如其他人所说,你可以非常轻松地使用!=不要忘记,即使你使用LINQ,你也要编写C#,而不是 SQL。

当然,您需要提供一个值,使其与select子句不相等:

var myBooks = from book in xDoc.Descendants("BOOKOB") 
              where book.Element("AUTHOR").Value != "Jeff Atwood"
              select book;

对于像这样的简单查询,我通常会发现“点符号”更易于阅读:

var myBooks = xDoc.Descendants("BOOKOB")
                  .Where(b => b.Element("AUTHOR").Value != "Jeff Atwood");

答案 2 :(得分:0)

您应该可以使用!=表示不相等而且==表示等于。