相关疑难解决方法(0)

比较两个通用列表并删除重复项

我有两个通用列表,一个名为"精选",另一个名为"过滤".

List<Content> Featured = new List<Content>();
List<Content> Filtered = new List<Content>();
Run Code Online (Sandbox Code Playgroud)

两者都包含"内容"项,这些项是简单的类,如下所示:

public class Content
{
    public long ContentID { get; set;}
    public string Title { get; set; }
    public string Url { get; set; }
    public string Image { get; set; }
    public string Teaser { get; set; }

    public Content(long contentId, string title, string url, string image, string teaser)
    {
        ContentID = contentId;
        Title = title;
        Url = url;
        Image = image;
    }
}
Run Code Online (Sandbox Code Playgroud)

出现在"已过滤"但出现在"精选"中的所有项目都需要从"已过滤"中删除.此外,两个列表将合并为一个通用列表,首先显示"精选"项目.

我知道我可以写几个foreach循环来做这个但我不禁觉得必须有一个更优雅的方法使用LINQ.

我正在使用C#4.0.

c# linq

6
推荐指数
2
解决办法
9576
查看次数

比较元组列表的最佳方法

我有两个从不同来源填充的列表,检查两个列表是否包含相同项目的最佳方法是什么?订单并不重要

List<Tuple<string, string, string>> list1;
List<Tuple<string, string, string>> list2;
Run Code Online (Sandbox Code Playgroud)

c#

3
推荐指数
1
解决办法
937
查看次数

比较2个列表

我会尽力在这里解释我的头痛.

我有两个包含相同类型的通用列表,因此包含相同类型的字段:

List<Car> car1 = GetCars1();
List<Car> car2 = GetCars2();
List<Car> finalListOfCars2 = new List<Car>();
Run Code Online (Sandbox Code Playgroud)

所以Car有一个名为BumperTypeID的字段

我想比较列表car1和car2,并从car2中找到那些car2,其中car2 [index] .BumperTypeID存在于car1的BumperTypeIDs列表中的所有BumperTypeID列表中.如果它在car1的BumperTypeIDs列表中找到,那很好......但是我需要在此之后再做一次检查以检查ColorIsBlack.如果第二次检查结果为真,那么确定我们很好,将当前的car2 [index]添加到finalList.

所以我不确定如何诚实地做到这一点.只是想着它让我头疼.它可能没有我想象的那么糟糕,但我无法用一种很好的方式来解决这个问题.

c#

1
推荐指数
1
解决办法
978
查看次数

标签 统计

c# ×3

linq ×1