小编Wil*_*lem的帖子

如何在C#中比较这些对象的一个​​或多个属性上的两个对象列表?

首先,我必须说我不是一个经验丰富的程序员.我在StackOverflow上查看了类似的问题,但似乎没有找到一个合适的答案,我可以用我有限的技能来实现.

在C#中,我需要根据这些对象中一个或多个属性的值来比较两个对象列表.我想创建两个新列表,一个是左边存在的对象,但是在一些属性值中存在差异,或者在右侧列表中根本不存在,反之亦然.

在我只需要根据一个值比较两个值之前,所以我不必处理对象而是使用字符串,所以我做了类似这样的事情:

(LeftItems and RightItems are Entities)

List<String> leftList = new List<string>();
List<String> rightList = new List<string>();
List<String> leftResultList = new List<string>();
List<String> rightResultList = new List<string>();
List<String> leftResultObjList = new List<string>();
List<String> rightResultObjList = new List<string>();


foreach (item i in leftItems)
{
  leftlist.Add(i.value);
}

//same for right 

foreach (string i in leftList)
{
  if(!rightList.contains(i))
  {
    leftResultList.Add(i);
  }
}

//same for the right list
Run Code Online (Sandbox Code Playgroud)

现在我必须比较多个值,所以我创建了一个类,它有几个我需要比较的属性,所以我想做与上面相同的,但是使用对象属性:

class CompItems
{
  string _x;
  string _y;

  public CompItems(string x, string y)
        {
         _x …
Run Code Online (Sandbox Code Playgroud)

c# compare properties list object

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

标签 统计

c# ×1

compare ×1

list ×1

object ×1

properties ×1