Выражение Xpath равно не работает, но больше, чем работает?

Мне нужно отфильтровать тип автомобиля из моего xml, но он продолжает выдавать ошибку «Ожидаемый '}'» ТИП.

XML-файл

<CATALOG>
  <CAR>
    <TYPE>SUV</TYPE>
    <PRICE>20000</PRICE>
  </CAR>
</CATALOG>

Я получаю сообщение об ошибке при попытке:

XPath=/CATALOG/CAR[TYPE='SUV']

Но это работает:

XPath=/CATALOG/CAR[PRICE>10000]

Поэтому я получаю ошибку только при использовании equal

Обновлено: Это код, который я использую для отображения элементов:

<ListBox x:Name = "listBoxCar" Grid.Column = "0" Grid.Row = "1" HorizontalAlignment = "Left" VerticalAlignment = "Top"
                 ItemsSource = "{Binding Source = {StaticResource CarDataSource},      
                                                    XPath=/CATALOG/CAR[TYPE='SUV']}"
                 ItemTemplate = "{DynamicResource carTemplate}" />

xml обновился, но был правильным в файле.

Можете ли вы поделиться своим кодом. Также ваш XML выглядит недействительным.

arslanaybars 14.02.2019 15:00

Опубликуйте свой код, пожалуйста. В любом случае это не связано с WPF. И да, это недопустимый XML — за <PRICE> не следует </PRICE>

Panagiotis Kanavos 14.02.2019 15:00

Я думаю, это из-за вашего xml, пожалуйста, проверьте проверку xml, см.: w3schools.com/xml/xml_validator.asp

arslanaybars 14.02.2019 15:06

@SubZero обновите вопрос и опубликуйте свой код. Это XAML, но не код. И пожалуйста исправьте свой XML.

Panagiotis Kanavos 14.02.2019 15:06

Я определенно рекомендую попытаться воспроизвести это в консольном приложении, явно выполняющем XPath - любому будет намного проще вам помочь.

Jon Skeet 14.02.2019 15:19

</CATALOG должен быть </CATALOG> (возможно, просто проблема с копированием/вставкой в ​​​​окне). и ваши оригинальные работы (/CATALOG/CAR[TYPE='SUV']) через тестовый прицел: freeformatter.com/xpath-tester.html#ad-output

Epistaxis 14.02.2019 15:22

Нет воспроизведения с XmlDocument и SelectSingleNode(@"/CATALOG/CAR[TYPE='SUV']"). Это возвращает весь элемент автомобиля.

Panagiotis Kanavos 14.02.2019 15:23
XPath=/CATALOG/CAR[TYPE='SUV'] является допустимым синтаксисом XAML нет. Предполагается, что это строка. Должно быть XPath = "/CATALOG/CAR[TYPE='SUV']". Вот на что жалуется ошибка — она нашла что-то, что не смогла разобрать, пока не дошла до конца тега Binding. Пример документации показывает, как писать операторы XPath.
Panagiotis Kanavos 14.02.2019 15:26

Если вы получили ошибку, сообщите нам, что это за ошибка: здесь начинается диагностика!

Michael Kay 14.02.2019 17:22
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
0
9
52
0

Другие вопросы по теме