我有一個電話組列表中的電話對象列表。手機上有一個屬性「is4GCompatible」。Linq列表中的查詢列表並排除子列表數據
我想查詢電話組,並讓我包含4GComptible電話的所有電話組。 linq查詢有一定的擴展性,但它也包含不兼容的手機,這不是我正在尋找的手機。
代碼的活生生的例子:http://rextester.com/OKB8502
請指教?
我有一個電話組列表中的電話對象列表。手機上有一個屬性「is4GCompatible」。Linq列表中的查詢列表並排除子列表數據
我想查詢電話組,並讓我包含4GComptible電話的所有電話組。 linq查詢有一定的擴展性,但它也包含不兼容的手機,這不是我正在尋找的手機。
代碼的活生生的例子:http://rextester.com/OKB8502
請指教?
你有這樣的示例代碼來獲取包含有4Gcompatible手機羣:
phonegroups.Where(p => p.phones.Any(x => x.is4GCompatible == true)).ToList();
如果要排除並非4GCompatible你會把手機需要構建僅包含那些4GCompatible的電話的新羣組:
phonegroups.Where(pg => pg.phones.Any(p => p.is4GCompatible))
.Select(pg => new phonegroup
{
groupName = pg.groupName,
phones = pg.phones.Where(p => p.is4GCompatible).ToList()
})
.ToList();
只是猜測,你想要包含4GComptible電話的羣組。使用Where
+ Any
:
var all4GComptible = phoneGroups.Where(pg => pg.Any(p => p.is4GCompatible));
壞請求.....請在此處顯示您的代碼。 –
我只在Chrome中收到了錯誤的請求。奇怪。 –