У меня очень сложный XML, и мне нужно проверить, существует ли какой-то конкретный элемент только один раз внутри каждого дочернего элемента XML.Найти повторяющиеся элементы на основе другого значения тега XML
<?xml version="1.0" encoding="UTF-8"?>
<deal>
<commercial>
<party />
<party>
<role_detail>
<role_type>Primary</role_type>
</role_detail>
<listingagents>
<listingagent>1</listingagent>
<listingagent>2</listingagent>
</listingagents>
</party>
<party>
<role_detail>
<role_type>Secondary</role_type>
</role_detail>
<listingagents>
<listingagent>1</listingagent>
</listingagents>
</party>
<party />
</commercial>
<commercial />
<commercial />
</deal>
Каждый коммерческий тег должен содержать только один тег listingagent, когда партия тега role_type = PRIMARY.
Для каждой коммерческой рекламы мне нужно выбрать сторону типа Первичный, а затем проверить, что это за листинговым тегом, и он должен содержать только один дочерний список.
серия xpaths может сделать трюк. вы что-то пробовали? – Ted
Каковы требования, если у партии * нет * есть тип роли PRIMARY? И похоже, что это элемент listingAgent в теге * party *, а не в теге * commercial *. (Это также помогло бы, если бы вы отделили XML для удобства чтения.) –
Он будет иметь тип первичной ролей. Да, элемент регистрации находится внутри Стороны. Но мне нужно выполнить эту проверку на весь xml для каждого коммерческого тега. Мне нужно сделать это с помощью LINQ –