Как запросить данные Ара, где находится "Будапешт"? - PullRequest
0 голосов
/ 17 октября 2011
<?xml version="1.0" encoding="utf-8" ?>
<OnlineRadios>
  <Area Location="Budapest">
    <Radio>
      <Name>
        NeoFM
      </Name>
      <Előadó>
        Balage
      </Előadó>
    </Radio>
    <Radio>
      <Name>
        NeoFM
      </Name>
      <Előadó>
        Balage
      </Előadó>
    </Radio>
    <Radio>
      <Name>
        NeoFM
      </Name>
      <Előadó>
        Balage
      </Előadó>
    </Radio>
  </Area>
  <Area Location="Kecskemét">
    <Radio>
      <Name>
        NeoFM
      </Name>
      <Előadó>
        Balage
      </Előadó>
    </Radio>
    <Radio>
      <Name>
        NeoFM
      </Name>
      <Előadó>
        Balage
      </Előadó>
    </Radio>
    <Radio>
      <Name>
        NeoFM
      </Name>
      <Előadó>
        Balage
      </Előadó>
    </Radio>
  </Area>
</OnlineRadios>

Я хочу запросить все радиостанции, где местоположение совпадает с местоположением поиска. Таким образом, я дал условие, тогда я должен был бы заполнить результат. Я пытался

var x = (from a in XmlFile2.Elements("Area")
          where a.Attribute("Location").Value == "Budapest"
          select a;

но это не работает. Или не достаточно. Если вы знаете, пожалуйста, помогите мне.

1 Ответ

1 голос
/ 17 октября 2011

Elements() получает только прямых дочерних элементов текущего узла (в отличие от Descendants()), которые вы хотите квалифицировать с корневым узлом в этом случае - это работает:

var x =   from a in XmlFile2.Root.Elements("Area")
          where a.Attribute("Location").Value == "Budapest"
          select a;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...