How to retrieve data RANDOMLY from SQL Server using C# -
i have set of questions in database , need retrieve them in random order every time.
can please me out c# code? i'm using visual studio 2012.
thanks in advance.
here's code i'm using @ moment:
using system; using system.data; using system.configuration; using system.collections; using system.web; using system.web.security; using system.web.ui; using system.web.ui.webcontrols; using system.web.ui.webcontrols.webparts; using system.web.ui.htmlcontrols; public partial class perform_test : system.web.ui.page { public int currentpage { { object o = this.viewstate["_currentpage"]; if (o == null) return 0; else return (int)o; } set { this.viewstate["_currentpage"] = value; } } protected void page_load(object sender, eventargs e) { //response.write(session["company"]); if (!page.ispostback) { session.add("correctanswers", 0); //session.add("questions", 0); session.add("answer", ""); } if (repeat_exam_data.controls.count > 0) { (int = 1; <= 4; i++) { radiobutton rad = repeat_exam_data.controls[0].findcontrol("choice" + i.tostring()) radiobutton; if (rad.checked) { session["answer"] = rad.text; break; } } } getpage(); } protected void getpage() { datatable exam_data = new datatable(); exam_data = bussinesslayer.getexamdata(session["company"].tostring(), session["subject"].tostring(), session["examid"].tostring()); pageddatasource pgds = new pageddatasource(); pgds.datasource = exam_data.defaultview; pgds.allowpaging = true; pgds.pagesize = 1; pgds.currentpageindex = currentpage; repeat_exam_data.datasource = pgds; repeat_exam_data.databind(); cmd_next.enabled = !pgds.islastpage; cmd_finish.enabled = pgds.islastpage; lblqno.text = convert.tostring((currentpage + 1)); lblcorrectanswers.text = session["correctanswers"].tostring(); } protected void cmd_next_click(object sender, eventargs e) { calculatemark(); currentpage += 1; getpage(); } protected void cmd_finish_click(object sender, eventargs e) { calculatemark(); string strsql = "insert tbl_result(examid,studentid,mark) values('" + session["examid"] + "','" + session["uname"] + "','" + session["correctanswers"] + "')"; bussinesslayer.putdata(strsql); response.redirect("~/canexamresult.aspx"); } private void calculatemark() { hiddenfield ans = repeat_exam_data.controls[0].findcontrol("answer") hiddenfield; if (session["answer"].tostring() == ans.value) session["correctanswers"] = (int)session["correctanswers"] + 1; } }
this code dosn't contain code responsible feaching data. inside bussinesslayer.getexamdata() probably. can achive random order example using
order newid()
at end of query.
Comments
Post a Comment