通过变量检查对象是否已经存在
Check if object already exist by a variable
我有一个 var 变量分配如下,其中 x.Item
是类型 'Object'
var items = paymentList.Select(x => x.Item).Distinct();
假设项目包含两个值 AUTO 和 ADVANCE。
我有一个 CreditCard
类型的对象
public class CreditCard
{
public string uniqueId {get; set;}
}
我有一个列表 itemsList
有信用卡。我想删除那些 uniqueId "not in" items
collection.
itemsList.RemoveAll(x => x as ct_CreditCard.uniqueId not in items)
假设我在 itemsList
中有两个 CreditCard 对象,其 uniqueId 值为 AUTO 和 BILL。
它应该删除具有 uniqueId = BILL 的 CreditCard,因为 items
只包含 AUTO 和 ADVANCE
如何实现?
我认为这可行
itemList.RemoveAll(x => !items.Contains(((ct_CreditCard)x).uniqueId)
试试这个代码
itemsList.RemoveAll(crItem => !items.Any(y => y == crItem.uniqueId));
以下适用于任何可枚举的 CreditCards 序列,不仅适用于 List<CreditCard>
var listWithoutItems = originalList
.Where(creditCard => !items.Contains(creditCard.UniqueId));
如果您想用这个新列表替换原来的列表:
originalList = originalList
.Where(creditCard => !items.Contains(creditCard.UniqueId))
.ToList();
我有一个 var 变量分配如下,其中 x.Item
是类型 'Object'
var items = paymentList.Select(x => x.Item).Distinct();
假设项目包含两个值 AUTO 和 ADVANCE。
我有一个 CreditCard
public class CreditCard
{
public string uniqueId {get; set;}
}
我有一个列表 itemsList
有信用卡。我想删除那些 uniqueId "not in" items
collection.
itemsList.RemoveAll(x => x as ct_CreditCard.uniqueId not in items)
假设我在 itemsList
中有两个 CreditCard 对象,其 uniqueId 值为 AUTO 和 BILL。
它应该删除具有 uniqueId = BILL 的 CreditCard,因为 items
只包含 AUTO 和 ADVANCE
如何实现?
我认为这可行
itemList.RemoveAll(x => !items.Contains(((ct_CreditCard)x).uniqueId)
试试这个代码
itemsList.RemoveAll(crItem => !items.Any(y => y == crItem.uniqueId));
以下适用于任何可枚举的 CreditCards 序列,不仅适用于 List<CreditCard>
var listWithoutItems = originalList
.Where(creditCard => !items.Contains(creditCard.UniqueId));
如果您想用这个新列表替换原来的列表:
originalList = originalList
.Where(creditCard => !items.Contains(creditCard.UniqueId))
.ToList();