2013-09-27 73 views
0

我想將兩個或多個記錄合併到一個基於SqlDataReader數據的字符串中。SqlDataReader:將記錄合併爲一個字符串與Delimeters

SqlDataReader data = cmd.ExecuteReader(); 
string category = ""; 
while (data.Read()) 
{ 
    category = data["Column1"].ToString() + ", " + category; 
} 
ltCategory.Text = category.TrimEnd(','); 

我有2個現有記錄和ltCategory.Text顯示記錄1,RECORD2,

我想使用以下格式:

  • 記錄1
  • 記錄1,RECORD2, Record3

解決方案

SqlDataReader data = cmd.ExecuteReader(); 
string category = ""; 
while (data.Read()) 
{ 
    category += ", " + data["Column1"].ToString(); 
} 
ltCategory.Text = category.TrimStart(','); 

回答

1

變化category = data["Column1"].ToString() + ", " + category;category += data["Column1"].ToString() + ", ";

ltCategory.Text = category.TrimEnd(','); 

這可能需要改變,以及到:

ltCategory.Text = category.TrimEnd(', '); 
+0

不幸的是,你不能TrimEnd內添加多個字符( )。 – abramlimpin

+0

逗號在字符串的末尾仍可見。 – abramlimpin

+1

'category + = data [「Column1」]。ToString()+「,」+「」;' 然後在您的循環之外: 'categoryText = category.TrimEnd(''); ltCategory.Text = categoryText.TrimEnd(',');' 但是請注意最優雅的解決方案。你可以選擇在+ =開始處有空格並執行TrimStart。 –