只是想知道哪種方法更快,更好的使用或做你喜歡LINQ的任何()VS的foreach
bool userHavePermission = user.Permissions.Any(x => x.UpperName == "ADMINISTRATOR");
或
foreach (Permission p in _Permissions)
{
if (p.UpperName == name.ToUpper())
return true;
}
return false;
感謝
有效,它是相同的代碼;任何''遍歷'IEnumerable'應用謂詞,在第一次匹配時返回true(並停止迭代)。也就是說,我會選擇'Any',因爲它非常清楚代碼要做什麼。 – JerKimball 2013-02-15 22:09:35
您是否嘗試過比較得到的IL代碼?或者,如果不同,最終的jitter代碼? – 2013-02-15 22:09:39
這個問題完全是主觀的,而不是建設性的,這使得它不適用於SO。 – Servy 2013-02-15 22:12:48