У меня есть некоторые LINQ код, который генерирует список строк, как это:Самый быстрый способ преобразования списка строк в одну конкатенированную строку?
var data = from a in someOtherList
orderby a
select FunctionThatReturnsString(a);
Как преобразовать этот список строк в одну большую каскадную строку? Допустим, что данные имеют следующие записи:
"Some "
"resulting "
"data here."
я должен закончить с одной строкой, которая выглядит следующим образом:
"Some resulting data here."
Как я могу сделать это быстро? Я подумал об этом:
StringBuilder sb = new StringBuilder();
data.ToList().ForEach(s => sb.Append(s));
string result = sb.ToString();
Но это просто не кажется правильным. Если это правильное решение, как я могу превратить это в метод расширения?
+1 Это не самый короткий метод, но OP явно запрашивает * fastest *, и это действительно бьет, используя 'ToArray()', следующим за строкой string.Concat/'string.Join'. – Noldorin
@Noldorin: Fastest немного не определено;) Для программиста или машины? –
Спасибо! Скорее всего, я имел в виду время работы. – jasonh