您好我有以下代碼:LINQ和ReSharper的
if (!_jobs.Any(j => j.Id == emailJob.Id))
{
}
此代碼應該找到滿足條件的任何元素。所以,我認爲它應該找到的第一個元素,這樣的事情後返回:
if (!_jobs.FirstOrDefault(j => j.Id == emailJob.Id) != null)
{
}
ReSharper的嘗試這個LINQ表達式簡化爲:
if (_jobs.All(j => j.Id != emailJob.Id))
{
}
這似乎效率不高我,因爲它有檢查每一個元素是否滿足逆向條件。
對不起,如果我只是誤解LINQ的工作原理。
Joe
這取決於,真的。 –
你必須檢查整個列表,如果它們全都與那個ID不同。即使在第一個例子中。 –
當抽屜裏還有一隻襪子還沒有看過時,你怎麼能告訴那個人X沒有任何紅色的襪子? –