У меня есть XML точно такой же формат:
<?xml version="1.0" encoding="utf-8"?>
<book>
<chapter>
<verse>This is verse 1</verse>
<verse>This is verse 2</verse>
<verse>This is verse 3</verse>
<verse>This is verse 4</verse>
</chapter>
<chapter>
<verse>This is verse 1</verse>
<verse>This is verse 2</verse>
</chapter>
<chapter>
<verse>This is verse 1</verse>
</chapter>
</book>
В C # с использованием Linq мне нужно иметь возможность получить элемент XML определенной позиции или индекса на основе значения функции state.getChapterNumber (). Например, если значение было 4, мне нужно извлечь элемент 4-й главы из документа XML.
XDocument book = XDocument.Load(string.Format("Translations/NWT/{0}.xml", state.BookName));
var verses = from chapter in book.Decendants()
where state.getChapterNumber() == (WHAT DO I PUT HERE TO MATCH THE VALUE??)
from verse in chapter.Descendants("p").Elements()
select new
{
VerseNumber = verse.Attribute("n").Value,
Text = verse.Value,
LastVerseInParagraph = verse.Parent.Elements().LastOrDefault().Value,
FirstVerseInParagraph = verse.Parent.Elements().FirstOrDefault().Value
};
Пожалуйста, помогите, это действительно важно и удерживает меня в течение нескольких дней. Все, что я хочу сделать, это иметь возможность получать стихи из любого набора глав, которые я выберу в книге.