Utilizzare una funzione come corpo di una lambda in LINQ to Objects

di Stefano Mostarda, in LINQ,

I filtri da applicare in una query LINQ non sono sempre semplici. Prendiamo l'esempio in cui bisogna eseguire un filtro su una lista in base a condizioni molto complesse. In questo caso, la cosa migliore è scrivere un metodo che accetti in input un elemento della lista, verifchi se l'elemento è valido e ritorni un boolean che lo indichi.

bool IsEnabled(Persona p)
{
  bool result;
  //codice complesso di valutazione;
  return result;
}

Infine, nella lambda si invoca il metodo invece che scrivere un'espressione complessa.

var q = persone.Where(p => IsEnabled(p));

Commenti

Visualizza/aggiungi commenti

| Condividi su: Twitter, Facebook, LinkedIn

Per inserire un commento, devi avere un account.

Fai il login e torna a questa pagina, oppure registrati alla nostra community.

Approfondimenti

I più letti di oggi