c# - System.Data.DataRowCollection' does not contain a definition for 'ToList' and no extension method 'ToList' accepting a first argument -
i stuck how resolve
public bool deletevegetationzone(ref assessment objassessment, int vegetationzoneidtodelete, string userfullname, ref string errormessage) { string rowfilter = @"vegetationzoneid=" + convert.tostring(vegetationzoneidtodelete); assessment.tblvegetationzonerow[] vegetationzonerows = (assessment.tblvegetationzonerow[])objassessment.tblvegetationzone.select(rowfilter); if ((vegetationzonerows != null) && (vegetationzonerows.length != 0)) { if (vegetationzonerows.length == 1) { if (vegetationzonerows[0].vegetationzoneid > 0) { vegetationzonerows[0].updatedbysystemuser = userfullname; vegetationzonerows[0].savetype = (int)enumcollection.savetype.removeonly; } else { vegetationzonerows[0].delete(); objassessment.acceptchanges(); } //tblthreatenedspeciessubzone var list = objassessment.tblthreatenedspeciessubzone.rows.tolist(); (int = 0; < objassessment.tblthreatenedspeciessubzone.count; i++) { foreach (assessment.tblthreatenedspeciessubzonerow threatenedspeciessubzonerow in objassessment.tblthreatenedspeciessubzone.rows) { if (threatenedspeciessubzonerow.vegetationzoneid == vegetationzoneidtodelete) deletethreatenedspeciessubzone(ref objassessment, threatenedspeciessubzonerow.threatenedspecieszoneid, userfullname, ref errormessage); } } updatespeciesgeohabitatsurveytime(ref objassessment, userfullname, ref errormessage); } else { //cannot have more 1 row same key errormessage = "error: more 1 record found - vegetation zone id = " + convert.tostring(vegetationzoneidtodelete); homecoming false; } } else { //must have @ to the lowest degree 1 row same key errormessage = "error: record not found - vegetation zone id = " + convert.tostring(vegetationzoneidtodelete); homecoming false; } homecoming true; }
i have problem " tblthreatenedspecies subzone" delete, throws exception "error occurred. collection modified; enumeration operation might not execute"
var list = objassessment.tblthreatenedspeciessubzone.rows.tolist(); (int = 0; < objassessment.tblthreatenedspeciessubzone.count; i++) { foreach (assessment.tblthreatenedspeciessubzonerow threatenedspeciessubzonerow in objassessment.tblthreatenedspeciessubzone.rows) { if (threatenedspeciessubzonerow.vegetationzoneid == vegetationzoneidtodelete) deletethreatenedspeciessubzone(ref objassessment, threatenedspeciessubzonerow.threatenedspecieszoneid, userfullname, ref errormessage); } }
i tried modified based on guys advised have different exception.
hope guide me on right path.
a datarowcollection
not implement generic ienumerable<datarow>
non-generic Ìenumerable
interface. that's why cannot utilize linq extension methods on datatable.rows
directly. have utilize datatabe.asenumerable
or rows.cast<datarow>
.
var list = objassessment.tblthreatenedspeciessubzone.asenumerable().tolist();
c#
No comments:
Post a Comment