asp.net 动态生成试卷的有关问题
asp.net 动态生成试卷的问题
要实现生成网上试卷的功能,试卷题目类型有单选,多选,和问答题。单选,多选题选项个数不确定,题目个数也不确定。数据库中有试题表,试题选项表,用户答案表。我怎样从数据库中读取试题和选项动态生成试卷?
------解决方案--------------------
弄自定义的选择,由创建试卷的人来选定各种类型题目的数量,然后你去对应的题目里面随即抽取对应数量的题目出来即可-[喽水把子]
------解决方案--------------------
试题是属于试卷的,首先要根据哪套试卷来遍历所有题目,根据题目类型分别加载本类型下的试题,再根据具体题目找出所有选项
分块会比较好,单选区域、多选区域、问答区域,然后分别遍历显示
------解决方案--------------------
你可以在没有读数据库之前用随机数生成三种题型各个的题目数量,让后再到数据库随机读取每个题型相应的题数量
------解决方案--------------------
根据具体情况,后台给个方向,让管理员添加试题的时候选择选择类型:单选,多选(给这栏设置个字段)
前台试题调用的时候,根据选择类型,在后台设置控件,服务器控件实现起来太麻烦,建议使用ajax的方式
追加服务器控件,实现多选和单选
下边是个例子,和你说的差不多
要实现生成网上试卷的功能,试卷题目类型有单选,多选,和问答题。单选,多选题选项个数不确定,题目个数也不确定。数据库中有试题表,试题选项表,用户答案表。我怎样从数据库中读取试题和选项动态生成试卷?
ASP.NET
------解决方案--------------------
弄自定义的选择,由创建试卷的人来选定各种类型题目的数量,然后你去对应的题目里面随即抽取对应数量的题目出来即可-[喽水把子]
------解决方案--------------------
试题是属于试卷的,首先要根据哪套试卷来遍历所有题目,根据题目类型分别加载本类型下的试题,再根据具体题目找出所有选项
分块会比较好,单选区域、多选区域、问答区域,然后分别遍历显示
------解决方案--------------------
你可以在没有读数据库之前用随机数生成三种题型各个的题目数量,让后再到数据库随机读取每个题型相应的题数量
------解决方案--------------------
根据具体情况,后台给个方向,让管理员添加试题的时候选择选择类型:单选,多选(给这栏设置个字段)
前台试题调用的时候,根据选择类型,在后台设置控件,服务器控件实现起来太麻烦,建议使用ajax的方式
追加服务器控件,实现多选和单选
下边是个例子,和你说的差不多
/// <summary>
/// 创建控件
/// </summary>
/// <param name="item"></param>
/// <returns></returns>
private string createControl(Model.ProductAttribute item)
{
string input = "";
if (item.OptionalType.Value == 0)
{
if (item.EntryType.Value == 0) /*input*/
{
input += string.Format("<div><input type=\"text\" class=\"ipt1\" name=\"attr_[{0}]\"/></div>", item.ID);
}
else if (item.EntryType.Value == 1)/*select*/
{
input += string.Format("<div><select name=\"attr_[{0}]\">", item.ID);
input += "<option value=\"请选择\">请选择</option>";
foreach (string option in Regex.Split(item.OptionalValueList, "\r\n"))
{
if (!string.IsNullOrEmpty(option))
{
input += "<option value=\"" + option + "\">" + option + "</option>";