Seleziona una pagina

LINQ: Ottenere dei subset da una lista o array

Ti stai chiedendo se è possibile sfruttando LINQ creare una lista di array (List<string> per capirci) in modo da non dovere processare una lista infinita ed unica di elementi? Grazie a queste poche righe di codice è possibile farlo.

LINQ: da string[] a List<string[]> in poche righe!

LINQ: Come e perché di questo metodo

La necessità di scrivere il metodo appena proposto è nata durante lo sviluppo di un software per un cliente. Come fase iniziale del processo dovevo analizzare dei file e da essi raccogliere delle informazioni. Una volta ottenuto l’elenco dei file dal supporto, bisognava attendere.

A questo punto ho deciso di “rompere” la lista generata in più parti (ed avete appena visto come fare)  per poi analizzare i meta-dati necessari in parallelo in modo da anticipare i tempi rispetto ad una lista unica.

Note Conclusive

Come vedete con pochissime righe di codice è tutto fatto.  Chiudo l’articolo segnalando due cose importanti:

  • Mi piace obbligare il passaggio con “ref” di oggetti in quanto chi chiama il metodo è cosciente che in caso di modifiche sull’oggetto viene modificato l’oggetto di partenza. (in questo caso un sort per esempio)
  • Per processare le liste create ho usato il Parallel.ForEach offerto dal framework

 

Link Interessanti:

Pin It on Pinterest

Share This

Utilizzando il sito, accetti l'utilizzo dei cookie da parte nostra. maggiori informazioni

Questo sito utilizza i cookie per fornire la migliore esperienza di navigazione possibile. Continuando a utilizzare questo sito senza modificare le impostazioni dei cookie o cliccando su "Accetta" permetti il loro utilizzo.

Chiudi