給定一個對象集合「項目」的LINQ表達式,比如這個:LINQ選擇LAMBDA形式重複計數
var total = (from item in items select item.Value).Distinct().Count()
是否有可能將其轉換爲使用LINQ功能/ lambda表達式:
items.Select(???).Distinct().Count()
給定一個對象集合「項目」的LINQ表達式,比如這個:LINQ選擇LAMBDA形式重複計數
var total = (from item in items select item.Value).Distinct().Count()
是否有可能將其轉換爲使用LINQ功能/ lambda表達式:
items.Select(???).Distinct().Count()
它必須是可能的,因爲在幕後,LINQ轉換爲lambda表達式和表達TRE ES(至少LINQ到對象)
在你的情況的???
部分將是item => item.Value
,即對於item
,輸出item.value
。 所以,整個表達式將
var total = items.Select(item => item.Value).Distinct().Count();
似乎3分太晚了! ! – V4Vendetta
謝謝,+1描述,恐怕丹尼爾毆打你的答案,但! – Kyle
或只是'items.GroupBy(P => p.Value).Count之間的()' – Slai