我有两个IEnumerable<string>
IEnumerable<String> titleCollection = htmlDoc.DocumentNode.SelectNodes("//h2[@class=
'entry-title']/a").Select(x => x.InnerHtml);
IEnumerable<String> allImages = htmlDoc.DocumentNode.SelectNodes("//div[@class=
'entry-thumbnail hover-thumb']/a/img").Select(x => x.Attributes["src"].Value);
是否可以将它们合并到单个IEnumerable<HTMLELEmsnts>
。肯定会出现并发症,但有什么办法。
class HTMLElements
{
//private string _articeName;
public string ArticleName { get; set; }
public string ImageURL { get; set; }
}
答案 0 :(得分:6)
没有IEnumerable<string, string>
之类的东西。 IEnumerable<T>
只有一个类型参数。
但您可以使用Enumerable.Zip<TFirst, TSecond, TResult>
创建IEnumerable<Tuple<string, string>>
或类似内容。
编辑:
根据更新的问题,您似乎可能想要这样的内容:
IEnumerable<HTMLElements> Merge(IEnumerable<string> names, IEnumerable<string> urls)
{
return names.Zip(urls, (name, url) => new HTMLElements(name, url));
}