0
我想寫一個LINQ查詢,如果有多個具有相同值的屬性的對象,將返回true。查詢以確定一個屬性是否有多個元素具有相同的值?
以下是我想出了這麼遠:
Formatters.Where(Function(f As DataModel.Formatter) _
Formatters.Select(Function(f2 As DataModel.Formatter) f2.Name.ToLower()).Contains(f.Name.ToLower())).Count > 1
但是上面總是返回true,只要他們是在列表中更多的則1元,可有人請給我個忙。 ?
我懷疑你需要在那裏的ToLower調用,但否則看起來不錯。 –
我更改我的代碼以使用接受IEqualityComparer的GroupBy的重載,以避免使用ToLower。感謝您的領導! –
如果您已經明確使用GroupBy,那麼可能也值得使用Where作爲擴展方法 - 它最終會變得更簡單的代碼。 –