public string GetTestToClient(int TID, int count) { DataSet ds = GetAllTest(""); if (count > ds.Tables[0].Rows.Count) { return("[{\"ID\":0,\"Flag\":\"Error: 参数值超出试题表中的数量!\"}]"); } List <int> lsNo = new List <int>(); List <TChoiceT> lsChoice = new List <TChoiceT>(); Random rd; for (int i = 0; i < count; i++) { rd = new Random(); int iNo = rd.Next(ds.Tables[0].Rows.Count + 1); if (lsNo.Contains(iNo) || iNo == 0) { i--; continue; } else { TChoiceT tc = new TChoiceT(); try { tc.ID = Convert.ToInt32(ds.Tables[0].Rows[iNo][0].ToString()); tc.Content = ds.Tables[0].Rows[iNo][1].ToString(); tc.AnswerA = ds.Tables[0].Rows[iNo][2].ToString(); tc.AnswerB = ds.Tables[0].Rows[iNo][3].ToString(); tc.AnswerC = ds.Tables[0].Rows[iNo][4].ToString(); tc.AnswerD = ds.Tables[0].Rows[iNo][5].ToString(); } catch (Exception ex) { tc.Content = "Error:" + ex.Message; } lsChoice.Add(tc); lsNo.Add(iNo); } } string strMsg = new UserTest_Operator().CreateTest(TID, 2, lsNo); if (!"OK".Equals(strMsg)) { return("[{\"ID\":0,\"Flag\":" + strMsg + "\"}]"); } JavaScriptSerializer js = new JavaScriptSerializer(); return(js.Serialize(lsChoice)); }
public string GetTestToClient(int TID, int count) { DataSet ds = GetAllTest(""); if (count > ds.Tables[0].Rows.Count) { return("[{\"ID\":0,\"Flag\":\"Error: 参数值超出试题表中的数量!\"}]"); } List <int> lsNo = new List <int>(); List <TJudgmentT> lsJudgment = new List <TJudgmentT>(); Random rd; for (int i = 0; i < count; i++) { rd = new Random(); int iNo = rd.Next(ds.Tables[0].Rows.Count + 1); if (lsNo.Contains(iNo)) { i--; continue; } else { TJudgmentT tj = new TJudgmentT(); try { tj.ID = Convert.ToInt32(ds.Tables[0].Rows[iNo][0].ToString()); tj.Content = ds.Tables[0].Rows[iNo][1].ToString(); } catch (Exception ex) { tj.Content = "Error:" + ex.Message; } lsJudgment.Add(tj); lsNo.Add(iNo); } } string strMsg = new UserTest_Operator().CreateTest(TID, 4, lsNo); if (!"OK".Equals(strMsg.Trim())) { return("[{\"ID\":0,\"Flag\":" + strMsg + "\"}]"); } JavaScriptSerializer js = new JavaScriptSerializer(); return(js.Serialize(lsJudgment)); }