Array
(
)

Não sei da viabilidade de fazer em lambda ou linq a minha expressão

Pjava
   - 03 mar 2016

Tenho essas duas listas:
#Código

List<string> dirZipDireto = ConfigurationManager.AppSettings["Dir_Zip_Direto"].Split(';').ToList();
List<string> arquivos = Directory.GetFiles(caminhoCommiter, "*", SearchOption.AllDirectories).ToList();

Para minimizar linhas de código e dar mais beleza e consistência ao código, creio que eu posso melhorar isso e evitar alguns foreach. O que eu quero:
Gostaria de carregar a lista
Citação:
arquivos
com arquivos, exceto os que existem na lista de diretórios
Citação:
dirZipDireto
. Logo o código referente a arquivos pode ser minimizado e em uma única expressão?

Jothaz
   - 03 mar 2016


Citação:
Para minimizar linhas de código e dar mais beleza e consistência ao código


O que é beleza de um código para você?

As vezes você usa um linha só, mas as funções/métodos usados são desmembrados em inúmeras linhas.

Nem sempre linq/lambda é mais performático que o for ou foreach.

Na minha humilde opinião a beleza esta em algo simples, robusto, fácil de dar manutenção, feito sem perder tempo e performático.

Não vejo problema nenhum em usar um foreach.

Agora se você domina profundamente o linq/lambda e tem certeza de que é melhor, claro que deve usá-lo. Mas as vezes corre-se o risco de pegar um exemplo passado por alguém de um fórum e na verdade não é a melhor solução.

Como eu disse em outro post seu sobre um assunto parecido ou o mesmo: use p Except (que é Linq) ou o foreach mesmo.