model view controller - running total by linq : place results in paged List -
i try place results of below link in paged list:
linq sql , running total on ordered results
i change code :
var userdocs = db.docs.asqueryable(); int64 running_total = 0; var moeen = userdocs.tolist() .orderby(a => a.docdate) .select(a => { running_total += 1; return new moeenviewmodel { doc = a, remain = running_total }; } ); return view(moeen.topagedlist(1, 15)); but 'remain' results don't start 1. start 8 example if 'docs' records count 7
why ??? !!!
if return view(moeen) results ok
i find problem
var userdocs = db.docs.asqueryable(); int64 running_total = 0; var moeen = userdocs.tolist() .orderby(a => a.docdate) .select(a => { running_total += 1; return new moeenviewmodel { doc = a, remain = running_total }; } ); moeen = moeen.tolist(); return view(moeen.topagedlist(1, 15)); before list moeen .tolist(), every use of moeen cause side effect on running_total.
see : http://www.blackwasp.co.uk/linqrunningtotal.aspx
if change value of variable has been closed on before executing query, results affected.
Comments
Post a Comment