C# 可枚举。是否有2个以上的集合?

C# 可枚举。是否有2个以上的集合?,c#,collections,html-agility-pack,enumerable,C#,Collections,Html Agility Pack,Enumerable,我有一段代码,它查看html标记,从网站打印出产品名称和价格,然后使用.Zip打印出来,如下所示: 棒球-5英镑 足球-10英镑 玩具车-15.00英镑 有没有一种简单的方法可以使用不同的方法添加三个或更多的变量来压缩到一起 e、 g 棒球-5.00英镑-1123英镑 足球-10.00英镑-1124英镑 玩具车-15.00英镑-1125英镑 提前谢谢 我认为使用.Zip(多个级别的Zip?)不容易做到,但您可以动态做到: var productNameTags = document.Docum

我有一段代码,它查看html标记,从网站打印出产品名称和价格,然后使用.Zip打印出来,如下所示:

  • 棒球-5英镑
  • 足球-10英镑
  • 玩具车-15.00英镑
  • 有没有一种简单的方法可以使用不同的方法添加三个或更多的变量来压缩到一起

    e、 g

  • 棒球-5.00英镑-1123英镑
  • 足球-10.00英镑-1124英镑
  • 玩具车-15.00英镑-1125英镑

  • 提前谢谢

    我认为使用.Zip(多个级别的Zip?)不容易做到,但您可以动态做到:

     var productNameTags = document.DocumentNode.SelectNodes(textBox3.Text);
                    var priceTags = document.DocumentNode.SelectNodes(textBox2.Text);
                    var codeNameAndPrice = productNameTags.Zip(priceTags, (n, w) => new { productNameTags = n, priceTags = w });
                    int counter = 1;
                    if (codeNameAndPrice != null)
                    {
                        foreach (var nw in codeNameAndPrice)
                        {
                             label1.Visible = true;
                             label1.Text += counter + ". " + nw.productNameTags.InnerHtml + " - " + nw.priceTags.InnerHtml + "\n";
                        }
                    }
    
    没有

    您可以链接Zip调用,也可以编写(或查找)扩展/帮助器方法,该方法将并行遍历多个源,类似于Zip,以提供您正在寻找的功能


    在您的特定情况下,考虑重复一些父节点并选择相对于父级的单独子节点(假设所有特定节点的节点都是单个父节点的子节点)。

    您可以链<代码> zip 命令-在何处到1123, 1124,和1125来自?可能重复的@RegEdit这两个问题的预期结果是不同的,所以我不确定它是否应该重复。。。另一方面,答案也可以用来回答这个问题。。。所以,把我的金锤放在口袋里,而不是关上。很好地说明了使用索引进行合并的能力(对于相同长度的序列)。请注意,索引建议可以很好地用于数组/列表,但对于Xml/Html节点列表,每次访问索引时,它很可能是O(n)而不是O(1),从而使总体代码为O(n^2)而不是O(n)。
    var names = new[] { "Baseball", "Football", "Toy Car" };
    var prices = new[] { 5.0M, 10.0M, 15.0M };
    var ids = new[] { 1123, 1124, 1125 };
    var products = names
        .Select((name, index) => new { Name = name, Price = prices[index], Id = ids[index] });