如何检查是否一个名称包含在另一个集合
问题描述:
我做这样的事情目前:如何检查是否一个名称包含在另一个集合
allSales.Where(x => x.location == "NorthAmerica" && x.CompanyName);
我有一个List<Company>
和公司对象有一个.CompanyName属性。
我想筛选具有List集合中的CompanyName的销售。
公司类具有以下属性:
Company
Id
Name
以下不工作,但它是什么我想:
allSales.Where(x => x.location == "NorthAmerica" &&
companies.Exists(x => x.Name = x.CompanyName));
,其中公司是列表
答
假设你有一个变量companies
一个List<Company>
,你可以使用LINQ Any
method做这样的事情:
allSales
.Where(x =>
x.location == "NorthAmerica" &&
companies.Any(c => c.Name == x.CompanyName));
答
您可以使用在List<Company>
对象上使用Any()
方法,查询返回true或false给谓词。尝试是这样的:
allSales.Where(x => x.location == "NorthAmerica" && companies.Any(c => c.Name == x.CompanyName);
的可能的复制[LINQ - 数组属性包含其他元素数组](http://stackoverflow.com/questions/2539442/linq-array-property-contains-element-from-another-array) –
使用'.Contains'功能 – MethodMan
你的问题是什么? –