このコード行があります
var count = materials.Where(i => i.MaterialType1 == MaterialType.Major).Count();
どの Resharper に変更するよう促されるか
var count = materials.Count(i => i.MateriakType1 == MaterialType.Major);
なんで?変更の利点について誰か教えてください。
常に悪い場合、2番目のものは言いません。それは文脈に依存します。
LINQ to Objects の場合は、2 番目のものを使用することをお勧めします。私はそれをテストしなかったので、それは本当に私の推測です。
ただし、このような変更は常に同等であるとは限らないため、注意してください。たとえば、LINQ to Entities を使用した場合、2 番目のものはまったく機能しません。これCount
は、述語を使用したオーバーロードがLINQ to Entities でサポートされていないためです。