我在返回Linq查询的.Value
字符串列表时遇到问题:
Dim details = <Details>
<Vector size="5">
<Item>Syntactic Structures</Item>
<Item>Introduction</Item>
<Item>The Independence of Grammar</Item>
<Item>An Elementary Linguistic Theory</Item>
<Item>Phrase Structure</Item>
</Vector>
</Details>
Dim chapterTitles = details.<Vector>.<Item>.Skip(1).Take(4)
是正确的,它返回我想要的XElements列表(项目1 - 4,基数0),但我真的只需要这些XElements的.Value
的字符串列表。也许我只是在这里密集,但我在chapterTitles
查询中尝试过的任何东西都不起作用(附加.ToList.ToString等)。 details.<Vector>.<Item>.Skip(1).Take(4).Value
只返回第一个XElement的值。
有什么想法吗?
答案 0 :(得分:3)
您需要Select
将结果从XElement
转换为string
s。
Dim chapterTitles = details.<Vector>.<Item>.Skip(1).Take(4).Select(Function(item) item.Value)
或
Dim chapterTitles = From item In details.<Vector>.<Item>.Skip(1).Take(4) _
Select item.Value