DataTableデフォルト値の列EdgeIdが0の約10万件のレコードがあります
次のlinqクエリを使用して、このテーブルに値を挿入しています
foreach (IEdge ed in edCol)
{
var row = from r in dtRow.AsEnumerable()
where (((r.Field<string>("F1") == ed.Vertex1.Name) &&
(r.Field<string>("F2") == ed.Vertex2.Name)) ||
((r.Field<string>("F1") ==ed.Vertex2.Name) &&
(r.Field<string>("F2") == ed.Vertex1.Name)))
select r;
foreach (DataRow rows in row)
{
row["EgdeId"]=ed.Id;
}
}
内部foreach loopは実行にほとんどの時間がかかります。
DataTablethis foreach loopfor eachを使用せずにレコードを挿入するより良い方法はありますDataRowか?