2011-09-06 48 views
0

什麼是執行樞軸的LINQ方式,以便將行轉換爲一個字符串?LINQ選擇單行

例如

一個選擇產生:

a 
b 
c 

將顯示爲:

a,b,c 

回答

5

這聽起來像是你只是想string.Join

var results = string.Join(",", values); 

無需LINQ的。請注意,.NET 4比以前的版本有更多的重載string.Join - 所以如果你使用的是.NET 3.5,你可能需要這樣的東西:

var results = string.Join(",", values.Select(x => x.ToString()).ToArray()); 
+0

感謝喬恩。我猜這將是確保有一個前導字符的最好方法:value.Count()> 0?「,」:「」+ string.Join(「,」,values.Select(x => x.ToString( ))ToArray的())。 – sgtz

+0

@sgtz:這不太清楚你的意思。你是說你想要一個空的序列映射到「,」而不是「」?如果是這樣,我可以編輯 - 你根本不需要使用字符串連接。 –

+0

列表a b c映射到「,a,b,c」。空列表映射爲空字符串或null。空字符串似乎更方便。使用三元組很容易做到這一點......但是現在我試圖儘可能多地使用更多的LINQ +擴展方法。 – sgtz