在我的应用程序中,我想获取数据集中特定列的数据并将其转换为带逗号分隔的字符串。我用过下面的代码。但我认为它使应用程序非常缓慢。
string ids = "";
if (datatable1.Rows.Count > 0)
{
foreach (DataRow dr in datatable1.Rows)
{
ids += dr["id"].ToString() + " ,";
}
}
任何人都可以提供一些改进代码的建议。
答案 0 :(得分:3)
如果您进行的连接太多,请使用StringBuilder。
StringBuilder ids = new StringBuilder();
if (datatable1.Rows.Count > 0)
{
foreach (DataRow dr in datatable1.Rows)
{
ids.Append(dr["id"].ToString() + ",");
}
}
或者您可以使用string.Join
缩短它string ids = string.Join(",",datatable1.AsEnumerable()
.Select(r=> r.Field<int>("ID")));