首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >比较两组列表

比较两组列表
EN

Stack Overflow用户
提问于 2011-11-28 20:23:35
回答 2查看 764关注 0票数 0

可能重复: 比较其中包含列表的两个列表

我有一辆一流的汽车和一辆汽车模型。汽车有许多特性,如CarId和List<Models>。模型具有多种属性,如ModelID、颜色、Make等。我有一个汽车列表(来自最终用户)称为A,然后我有很少的汽车列表(来自DB)称之为B。A有一个列表的汽车,因为B有多个列表的汽车,我想比较这两种车型也包括。

我试过使用例外,但这似乎不起作用。

假设名单A有一辆车和两辆模型

代码语言:javascript
复制
Car
carId = 1 
Models
  Model  
  ModelId = 1
  **color = black
  make = 1999** 

  Model  
  ModelId = 3
  color = white
  make = 2004

清单B有两个项目

代码语言:javascript
复制
Car
carId = 5
Models
  Model 
  ModelId = 2
  color = blue
  make = 2000 

  Model
  ModelId = 3
  color = white
  make = 2010

Car
carId = 7
Models
  Model
  ModelId = 5
  **color = black
  make = 1999** 

  Model
  ModelId = 9
  color = grey
  make = 2011

在上面的示例中,粗体(标记为**)值应该由比较器生成,我将将其存储到新的列表中。

新名单将是

汽车carId =7型号ModelId =5颜色=黑色制造=1999年

感谢帮助。谢谢!

EN

回答 2

Stack Overflow用户

发布于 2011-11-28 20:34:45

A.Except(B)将无法工作,除非来自A的项与B中的项是相同的对象。要么需要在类层次结构中实现Equals,要么创建一个IEqualityComparer并将其传递给Except调用。

票数 1
EN

Stack Overflow用户

发布于 2011-11-28 20:28:44

看看IEnumerable.Union,这可能有助于解决你的问题

http://msdn.microsoft.com/en-us/library/bb341731.aspx

它将合并2组而不包括重复项。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8301836

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档