首页 > 解决方案 > 通过变量检查对象是否已存在

问题描述

我有一个分配如下的 var 变量,其中x.Item类型为“对象”

var items = paymentList.Select(x => x.Item).Distinct();

假设项目包含两个值 AUTO 和 ADVANCE。

我有一个类型的对象CreditCard

public class CreditCard
{
   public string uniqueId {get; set;}
}

我有一张itemsList有信用卡的清单。我想删除那些 uniqueId“不在”items集合中的人。

 itemsList.RemoveAll(x => x as ct_CreditCard.uniqueId not in items)

假设我有两个 CreditCard 对象,itemsList其 uniqueId 值为 AUTO 和 BILL。

它应该删除具有 uniqueId = BILL 的 CreditCard,因为items仅包含 AUTO 和 ADVANCE

我怎样才能实现它?

标签: c#linqcastingwhere

解决方案


我认为这可以工作

   itemList.RemoveAll(x => !items.Contains(((ct_CreditCard)x).uniqueId)

推荐阅读