我有一個Member類成員列表。會員類具有以下屬性:如何使用另一個列表執行Linq查詢列表
成員Id:字符串 成員名稱:字符串 DATEOFBIRTH:日期時間
List<Member> members = FindMembers();
我有成員Id的單獨列表,如下所示。
List<string> memberIds = GetTeenAgeMemberIds();
現在我必須使用memberIds列表中的值查詢成員列表。請讓我知道我如何使用Linq來做到這一點。
我有一個Member類成員列表。會員類具有以下屬性:如何使用另一個列表執行Linq查詢列表
成員Id:字符串 成員名稱:字符串 DATEOFBIRTH:日期時間
List<Member> members = FindMembers();
我有成員Id的單獨列表,如下所示。
List<string> memberIds = GetTeenAgeMemberIds();
現在我必須使用memberIds列表中的值查詢成員列表。請讓我知道我如何使用Linq來做到這一點。
您可以使用下面的LINQ查詢:
var result = members.Where(m => memberIds.Contains(m.MemberId)).
ToArray();
或者:
var result = (from m in members
join id in memberIds on m.MemberId equals id
select m).ToArray();
或者如果你喜歡的方法鏈:
var result = members.Join(memberIds, m => m.MemberId, id => id, (m, id) => m).
ToArray();
使目標列表中的數組或東西顯然是託管的,使用Contains來比較你所擁有的MemberId和你擁有的列表。
不幸的是我不能使用數組。我必須得到過濾列表作爲列表,因爲我必須使用此列表來綁定gridview。謝謝 –
user466663
@ user466663然後,只需將'ToArray()'調用替換爲'ToList()'。 – Mir