У меня есть веб-сервис, который мне нужно использовать, который возвращает следующее:
<catalog modules="2" children="0">
<title>Test Catalog</title>
<link type="application/xml" rel="self" href="http://someurl"/>
<link type="text/html" rel="alternate" href="http://someurl"/>
<parent modules="0" children="3">
<title>Top</title>
<link type="application/xml" rel="self" href="http://someurl"/>
<link type="text/html" rel="alternate" href="http://someurl"/>
</parent>
<module>
<id>MODULEID123</id>
<title>Some module title</title>
<link type="application/xml" rel="self" href="http://someurl"/>
<link type="text/html" rel="alternate" href="http://someurl"/>
<type>type123</type>
<description>Some Description</description>
</module>
<module>
<id>MODULEID456</id>
<title>Some other module title</title>
<link type="application/xml" rel="self" href="http://someurl"/>
<link type="text/html" rel="alternate" href="http://someurl"/>
<type>type123</type>
<description/>
</module>
</catalog>
Я использую RestSharp для использования службы, и при нормальных обстоятельствах я ожидаю, что теги будут находиться под родительским узлом или чем-то подобным, чтобы я мог просто класс ответа с List<Module> Modules
, который просто автоматически вытащил бы их. Однако, поскольку они просто равны узлам <parent>
, <title>
и <link>
, это выглядит почти искаженным (хотя, по общему признанию, прошло много времени с тех пор, как я глубоко вникал в то, как XML *должен* выглядеть - спасибо, JSON!
Итак, учитывая, что это возвращаемый результат, как я могу указать RestSharp для его анализа? Если RestSharp ожидает правильно сформированный XML и, следовательно, отклоняет его, должен ли я просто вручную проанализировать его с помощью XMLReader по старинке?