Я занимаюсь разработкой мобильного приложения asp.net. Я использую XML в качестве базы данных. Я использую следующий запрос для требуемого вывода. В файле XML у меня есть коллекция узлов MIMIC, а внутри узла MIMICS у меня есть коллекция узлов SECTION. Один или несколько узлов SECTION содержат один или несколько узлов SECTION (вложенный узел SECTION). В узле SECTION я имею DATAITEM следующим образом
<MIMIC ID="3" NAME="Network Status">
<SECTIONS>
<SECTION ID="1" NAME="SDA Server 1" HAS-SUBSECTIONS="TRUE">
<DATAITEM NAME="ABC">XYZ</DATAITEM>
<SECTION ID="2" NAME="Top Side">
<DATAITEMS>
<DATAITEM>Not Available</DATAITEM>
</DATAITEMS>
</SECTION>
<SECTION ID="3" NAME="Subsea" HAS-SUBSECTIONS="TRUE">
<SECTION ID="4" NAME="SDA">
<DATAITEMS>
<DATAITEM NAME="SEMA">
<ATTRIBUTE NAME="TYPE" VALUE="?" APPEND-TAG-NAME-BY ="?"/>
<ATTRIBUTE NAME="TagName" VALUE="?"/>
<ATTRIBUTE NAME="OPCTagName" VALUE="?"/>
</DATAITEM>
<DATAITEM NAME="SEMB">
<ATTRIBUTE NAME="TYPE" VALUE="?" APPEND-TAG-NAME-BY ="?"/>
<ATTRIBUTE NAME="TagName" VALUE="?"/>
<ATTRIBUTE NAME="OPCTagName" VALUE="?"/>
</DATAITEM>
</DATAITEMS>
</SECTION>
<SECTION ID="5" NAME="Manifolds" HAS-SUBSECTIONS="TRUE">
Для указанного выше XML-файла я использую следующий XML-запрос
string MIMIC_ID = "3";
string SECTION_ID = "1";
var QueryResultSet = from Mimic in FieldRoot.Element("USER-INTERFACE-DEFINITION").Element("MIMICS").Descendants("MIMIC")
.Where(e => e.Attribute("ID").Value == MIMIC_ID)
from DataItem in Mimic.Descendants("SECTION")
.Where(e => e.Attribute("ID").Value == SECTION_ID)
.Descendants("DATAITEM")
select DataItem;
В приведенном выше XML-запросе я хочу получить доступ к узлу DATAITEM только для узла SECTION, чей ID = 1. Но я получаю весь узел DATAITEM, чей ID СЕКЦИИ 2,3,4,5. Я думаю, что это потому, что я использую Mimic.Descendants («РАЗДЕЛ»). Есть ли другой метод, который может заменить метод Mimic.Descendants ("SECTION"), чтобы я мог получить доступ к узлу DATAITEM только для узла SECTION, чей ID = 1? Можете ли вы предоставить мне код или любую ссылку, с помощью которой я могу решить вышеуказанную проблему