是否有任何简单的LINQ表达式将我的整个List<string>集合项连接到具有分隔符字符的单个字符串?

如果集合是自定义对象而不是字符串呢?假设我需要连接object。name。


当前回答

List<string> strings = new List<string>() { "ABC", "DEF", "GHI" };
string s = strings.Aggregate((a, b) => a + ',' + b);

其他回答

List<string> strings = new List<string>() { "ABC", "DEF", "GHI" };
string s = strings.Aggregate((a, b) => a + ',' + b);

我已经使用LINQ做到了这一点:

var oCSP = (from P in db.Products select new { P.ProductName });

string joinedString = string.Join(",", oCSP.Select(p => p.ProductName));

好问题。我一直在用

List<string> myStrings = new List<string>{ "ours", "mine", "yours"};
string joinedString = string.Join(", ", myStrings.ToArray());

它不是LINQ,但它可以工作。

string result = String.Join(delimiter, list);

是充分的。

你可以简单地使用:

List<string> items = new List<string>() { "foo", "boo", "john", "doe" };

Console.WriteLine(string.Join(",", items));

编码快乐!