我有一個Collection
節點,特別是一個HTMLAgilityPack.HTMLNodeCollection
節點的集合。我知道我可以做從節點提取和存儲信息:C#:結合AddRange()和Lambda表達式
List<string> nodesList = new List<string>();
var nodes = myFile.DocumentNode.SelectNodes(file_path);
foreach (var node in nodes)
nodesList.Add(node.InnerText);
不過,我想要做的是應用AddRange()
,而不是在foreach
循環添加的項目。我正在嘗試使用lambda表達式來執行此操作,但我對lambda表達式不夠熟悉,無法正確執行此操作。我試圖像
nodesList.AddRange(string[] arr = x => nodes.ToArray()[x].InnerText);
聯合,我知道是沒有語法意義,但我不知道,甚至可以做到這一點。我只想收集Cast<string>()
,但我需要從每個節點中提取文本。
任何關於如何將其放入AddRange()
表達式的想法?
出於好奇,你的第一個例子實際上是編譯和運行? – 2014-12-19 02:48:08
@GrantWinney是的。不是嗎? – Bryant 2014-12-19 02:57:59
你正在迭代節點的集合,然後直接將它們添加到字符串列表中...我只是想,如果沒有選擇你感興趣的節點的屬性是行不通的(即'nodesList.Add (node.InnerText);') – 2014-12-19 02:58:58