我有一个datatable
,其中包含一些ID。我想用逗号分隔值来提取这些ID。我试过的是:
使用LINQ
int [] strGoalIds = (from Task in dtActionItems.AsEnumerable()
select Task.Field<int>("TaskEntityId")).ToArray();
string strGoalTagIds = "";
if (strGoalIds.Count() > 0)
{
strGoalTagIds = string.Join(",", strGoalIds );
}
WITH For循环
string strGoalIds = "";
for (int i = 0; i < dtActionItems.Rows.Count; i++)
{
strGoalIds = strGoalIds + "," + dtActionItems.Rows[i]["TaskEntityId"].ToString();
}
任何人都可以告诉我哪种方式最好。
答案 0 :(得分:1)
性能明智LINQ速度较慢,因为LINQ内部使用循环。如果你真的在为性能工作,请使用for循环。此堆栈溢出Post可能会帮助您For vs. Linq - Performance vs. Future