Widziałem, jak niektórzy programiści używają tego:
foreach (var item in items)
{
if (item.Field != null)
continue;
if (item.State != ItemStates.Deleted)
continue;
// code
}
zamiast tego, gdzie normalnie użyłbym:
foreach (var item in items.Where(i => i.Field != null && i.State != ItemStates.Deleted))
{
// code
}
Widziałem nawet kombinację obu. Bardzo podoba mi się czytelność z „kontynuuj”, szczególnie w bardziej złożonych warunkach. Czy jest jakaś różnica w wydajności? Zakładam, że z zapytaniem do bazy danych byłoby. Co ze zwykłymi listami?