簡體   English   中英

LINQ - 嵌套 where 子句

[英]LINQ - nested where clause

我有一個項目有問題。 我正在嘗試獲取公司列表,但只過濾位於“斯德哥爾摩”的公司。

表結構

**Company**:
CompanyID
CompanyName
etc…

**CompanyAddressDetails** (relation table):
Company_CompanyID
CorrespondingAddress_AddressID

**CorrespondingAddress**:
AddressID
StreetName
City
etc…

現在我首先做的是一個查詢:

var companyModel = from c in db.Company select c;

它獲得了公司的完整列表並擁有它們的對應地址(可以是多個),因此結果如下所示:

在此處輸入圖片說明

所以我的問題是:如何根據 CorrespondingAddress 下的嵌套元素之一進行過濾? 例如城市?

到目前為止我試過

companyModel = companyModel.Where(s => s.CorrespondingAddress.Where(x => x.City.Equals("Stockholm")));
companyModel = companyModel.Where(s => s.CorrespondingAddress.ToList().First().Address.Equals("Stockholm"));

但它們都不起作用。 謝謝!

companyModel = companyModel
               .Where(s => s.CorrespondingAddress
                     .Any(x => x.City.Equals("Stockholm")));

嘗試任何()

companyModel = companyModel.Where(s => s.CorrespondingAddress.Any(x => x.City.Equals("Stockholm"))); 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM