C # Linq XML Найти указанный элемент - PullRequest
0 голосов
/ 29 июня 2009

Может кто-нибудь опубликовать пример того, как проверить, существует ли элемент в xml-файле, используя linq?

Вот XML-документ:

<Database>
 <SMS>
   <Number>"+447528349828"</Number> 
   <Date>"09/06/24</Date> 
   <Time>13:35:01"</Time> 
   <Message>"Stop"</Message> 
</SMS>
 <SMS>
   <Number>"+447528349828"</Number> 
   <Date>"09/06/24</Date> 
   <Time>13:35:01"</Time> 
   <Message>"Stop"</Message> 
 </SMS>
</Database>

Я хочу иметь возможность указать номер и проверить, существует ли он

Ответы [ 2 ]

9 голосов
/ 29 июня 2009

Как насчет:

public static bool HasNumber(XDocument doc, string number)
{
    return doc.Descendants("Number")
              .Any(element => element.Value == number);
}

(Одно замечание - выглядит немного странно, что у вас есть кавычки вокруг чисел в XML-файле. Вам нужно их иметь?)

2 голосов
/ 29 июня 2009

Я думаю, что это должно сделать.

var exists = xml.Descendants("Number")
                .Any(e => String.Equals(
                   (string)e, 
                   number, 
                   StringComparison.OrdinalIgnoreCase))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...