0

在我的应用程序中,我想获取数据集中特定列中的数据并将其转换为带有逗号分隔的字符串。我使用了下面的代码。但我认为它使应用程序非常缓慢。

string ids = "";
if (datatable1.Rows.Count > 0)         
{
       foreach (DataRow dr in datatable1.Rows)
       {
           ids += dr["id"].ToString() + " ,";
       }

}

任何人都可以提供一些建议来改进代码。

4

1 回答 1

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")));
于 2012-10-19T07:41:20.507 回答