Criando uma lista separada por vírgulas da IList ou IEnumerable
Qual é a maneira mais limpa de criar uma lista separada por vírgula de valores de string a partir de uma 'Listaou
IEnumerable`?
O String.Join(...)
opera em uma string[]string[]
então pode ser complicado de trabalhar quando tipos como IList<string>
ou IEnumerable<string>
não podem ser facilmente convertidos em uma array de string.
800
3
**.NET 4+***
**Detalhes & Soluções Pre .Net 4.0***
IEnumerable` pode ser convertido em um array de string muito facilmente com LINQ (.NET 3.5):
It'é fácil o suficiente para escrever o método de ajuda equivalente, se você precisar:
Então chama-lhe assim:
Você pode então chamar
string.Join
. Claro, você não't tenha para usar um método de ajuda:Este último, no entanto, é um bocadinho bocado bocado bocado :)
Esta é provavelmente a maneira mais simples de fazê-lo, e bastante performante também - há outras questões sobre exatamente como é a performance, incluindo (mas não limitado a) esta.
A partir de .NET 4.0, há mais sobrecargas disponíveis em string.Join`, então você pode realmente apenas escrever:
Muito mais simples :)
você pode converter a IList para um array usando ToArray e então executar um comando string.join no array.
Você pode utilizar
.ToArray()
emLists
eIEnumerables
, e então utilizarString.Join()
como você quiser.