using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO; using System.Xml; using System.Xml.Linq; public static class LocalExtensions { public static string StringConcatenate( this IEnumerable source) { return source.Aggregate( new StringBuilder(), (s, i) => s.Append(i), s => s.ToString()); } public static string StringConcatenate( this IEnumerable source, Func projectionFunc) { return source.Aggregate( new StringBuilder(), (s, i) => s.Append(projectionFunc(i)), s => s.ToString()); } } class Program { static void Main(string[] args) { string[] stringList = new[] { "aaa", "bbb", "ccc" }; XElement xmlDoc = XElement.Parse( @" 111 222 333 "); string s1 = stringList.StringConcatenate(); string s2 = xmlDoc.Elements().StringConcatenate(el => (string)el); Console.WriteLine(s1); Console.WriteLine(s2); } }