我有两个不同实体的集合。如何从他们那里获得1个具有独特数据的集合(companyName& productName& certId)。
我尝试的是: 第一个集合我循环迭代并检查第二个集合是否包含具有相同certId,productName和companyName的元素。但我不确定我是否做得好。
如果元素不包含,我需要添加它。
releases.ForEach(
r =>
{
if (!ratings.All(x =>
x.certID == r.certID && x.companyNameWhenRated == r.companyNameOnStore &&
x.productNameWhenRated == r.productNameOnStore))
{
ratings.ToList().Add(new uRating
{
certID = r.certID,
productNameWhenRated = r.productNameOnStore,
companyNameWhenRated = r.companyNameOnStore,
uCert = r.uCert,
rAgeRating = r.uCert.uRatings
.Where(u => u.certID == r.certID
&& u.productNameWhenRated != r.productNameOnStore
&& u.companyNameWhenRated != r.companyNameOnStore)
.Select(ur => ur.rAgeRating).First()
});
}
});
答案 0 :(得分:1)
if (!ratings.All(...))
表示所有评级必须与发布匹配,这不是您想要的。使用if(!ratings.Any(...))
,这意味着任何评级都必须与版本匹配。