添加两个列表并复制c# MVC

本文关键字:复制 MVC 列表 两个 添加 | 更新日期: 2023-09-27 18:04:57

我有3个列表的产品实体键,我想把它们放在一个大列表中。我想要重复的,因为我想确定哪个产品在最终列表中被提及最多。

我正在尝试使用。union,但这会从最终列表中删除重复项。

//Union selector results
IQueryable<ProductModel> unionProducts = categoryProducts.Union(attOptProducts);
if (manufacturerProducts != null) 
    unionProducts = unionProducts.Union(manufacturerProducts);
if (brandProducts != null) 
    unionProducts = unionProducts.Union(brandProducts);

添加两个列表并复制c# MVC

使用Concat代替Union来保存副本:

        IQueryable<ProductModel> unionProducts = categoryProducts.Concat(attOptProducts);
        if (manufacturerProducts != null)
            unionProducts = unionProducts.Concat(manufacturerProducts);
        if (brandProducts != null) 
            unionProducts = unionProducts.Concat(brandProducts);

也可以通过.AddRange()方法

来完成。
IQueryable<ProductModel> unionProducts = categoryProducts.AddRange(attOptProducts);
        if (manufacturerProducts != null) unionProducts = unionProducts.AddRange(manufacturerProducts);
        if (brandProducts != null) unionProducts = unionProducts.AddRange(brandProducts);