Saturday, 15 May 2010

algorithm - c# Add some values at List -



algorithm - c# Add some values at List -

i write code do:

list<datarow> rows=new <datarow>(); foreach (datarow dtrow in sqlrows) { foreach (datarow dtrowid in dttrows1) { if (convert.toint32(dtrowid[0]) == convert.toint32(dtrow[1])) rows.add(dtparrow); } }

can write more effective way? may utilize linq? or other algorihtm?

p.s. sqlrows , dttrows1 list. grub table query this:"select * table name";

you utilize linq join, more efficient nested approach:

var query = dtrow in sqlrows bring together dtrowid in dttrows1 on convert.toint32(dtrow[1]) equals convert.toint32(dtrowid[0]) select ???; // dtparrow unknown. did mean dtrow? var list = query.tolist();

note if values int values (so don't need parsing etc) cast instead:

var query = dtrow in sqlrows bring together dtrowid in dttrows1 on (int) dtrow[1] equals (int) dtrowid[0] select ???; // dtparrow unknown. did mean dtrow? var list = query.tolist();

or utilize field<t> extension method (again, if they're int values don't need converting):

var query = dtrow in sqlrows bring together dtrowid in dttrows1 on dtrow.field<int>(1) equals dtrowid.field<int>(0) select ???; // dtparrow unknown. did mean dtrow? var list = query.tolist();

c# algorithm linq

No comments:

Post a Comment