我有XML正是這樣的格式:如何使用LINQ獲取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,我需要從XML文檔中獲取第4章元素。
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
};
請幫助,這是非常重要的,一直困擾我幾天。我想要做的就是能夠從書中選擇的任何章節中獲得經文。
爲什麼我不能說'哪裏chapter.Index()。值== state.getChapterNumber()' –