weixin_32712737 2017-07-10 07:39 采纳率: 0%
浏览 482
已结题

C# MVC单选之后传值问题

我现在帮一个在线自动打分的程序,model
using BrnMall.Core;
using BrnMall.Services;
using BrnMall.Web.Framework;

namespace BrnMall.Web.MallAdmin.Models
{
public class ExamModel
{

    public int classID { get; set; }


    /// <summary>
    /// 描述
    /// </summary>
    public string Name { get; set; }
    public DateTime CreateDate { get; set; }
    public string url { get; set; }
    public int ecount { get; set; }
}

public class ExamListModel
{

    public PageModel PageModel { get; set; }
    /// <summary>
    /// 广告位置列表
    /// </summary>
    public List<ExamInfo> ExamList { get; set; }
}
public class ExamshowListModel
{
    public PageModel pageModel;
    public int classID { get; set; }
    public int Id { get; set; }

    public List<AnswerInfo> showanlist { get; set; } //回答问题的列表
    /// <summary>
    /// 描述
    /// </summary>
    public string Name { get; set; }

    public string url { get; set; }
    public int ecount { get; set; }
    public List<ExercisesInfo> ExercisesList { get; set; }//题目列表

}

}
View
@model BrnMall.Web.MallAdmin.Models.ExamshowListModel

@section header{

进入查看详情


<script type="text/javascript" src="/admin_mall/scripts/jquery.validate.js"></script>
<script type="text/javascript" src="/admin_mall/scripts/jquery.validate.unobtrusive.js"></script>

}

@section body{

>>

@using (Html.BeginForm())
{
@Html.HiddenFor(m => m.Id)
@Html.HiddenFor(m => m.classID)
@Html.HiddenFor(m => m.Name)
@Html.HiddenFor(m => m.ecount)

@for (int i = 0; i m.ExercisesList[i].id) @Html.HiddenFor(m => m.showanlist[i].Id) if (info.type == 1) { //单选 @Html.ValidationMessageFor(m => m.showanlist[i]) @Html.HiddenFor(m => m.showanlist[i]) } else if (info.type == 2) {//多选 } else if (info.type == 3) {//判断 } else if (info.type == 4) {//简答 } } @Html.HiddenFor(m => m.showanlist) @Html.HiddenFor(m => m.ExercisesList)
题目: @Html.TextBoxFor(x => x.Name, new { @class = "input", size = "35" })@Html.ValidationMessageFor(x => x.Name)
题目: @info.title
A: @Html.RadioButtonFor(m => m.showanlist[i].A, Model.showanlist[i].Id, new { @id = Model.showanlist[i].Id.ToString(), @name = Model.showanlist[i].Name.ToString() }) @Html.ValidationMessageFor(m => m.showanlist[i].A) @Model.ExercisesList[i].A
B: @Html.RadioButtonFor(m => m.showanlist[i].A, aninfo.Id, new { @id = aninfo.Id.ToString(), @name = aninfo.Name.ToString() }) @Html.ValidationMessageFor(m => m.showanlist[i].A)@Model.ExercisesList[i].B
C: @Html.RadioButtonFor(m => m.showanlist[i].A, aninfo.Id, new { @id = aninfo.Id.ToString(), @name = aninfo.Name.ToString() }) @Html.ValidationMessageFor(m => m.showanlist[i].A)@Model.ExercisesList[i].C
D: @Html.RadioButtonFor(m => m.showanlist[i].A, aninfo.Id, new { @id = aninfo.Id.ToString(), @name = aninfo.Name.ToString() }) @Html.ValidationMessageFor(m => m.showanlist[i].A)@Model.ExercisesList[i].D
A: @info.A
B: @info.B
C: @info.C
D: @info.D
A: @info.A
B: @info.B
A: @info.A
  提交 $(function () { $("#sumbitBut").click(function () { $("form:first").submit(); return false; }) });
   
}

}

Controller
[HttpGet]
public ActionResult Edit(int storeRid = -1)
{
ExamInfo storeRankInfo = Exam.GetExamById(storeRid);
if (storeRankInfo == null)
return PromptView("试题不存在");
string url = storeRankInfo.url;
DataTable dt1 = new DataTable();
dt1.ReadXml(url);

        //////////取出URL
        ////////URL生成题


        ExamshowListModel model = new ExamshowListModel();
        model.classID = storeRankInfo.classID;
        model.Id = storeRankInfo.Id;
        model.ecount = storeRankInfo.ecount;
        List<ExercisesInfo> infolist=new List<ExercisesInfo>();
        List<AnswerInfo> anlist = new List<AnswerInfo>();
        foreach (DataRow row in dt1.Rows) {
            ExercisesInfo info = new ExercisesInfo();
            AnswerInfo aninfo = new AnswerInfo();
            info.id = TypeHelper.ObjectToInt(row["Id"]);
            info.type = TypeHelper.ObjectToInt(row["type"]);
            info.title=row["title"].ToString();
            info.A = row["A"].ToString();
            info.B = row["B"].ToString();
            info.C = row["C"].ToString();
            info.D = row["D"].ToString();
            info.answer = row["answer"].ToString();
            aninfo.Id = info.id;
            aninfo.Name = "N"+info.id.ToString();
            infolist.Add(info);
            anlist.Add(aninfo);
        }
        model.ExercisesList = infolist;
        model.showanlist = anlist;
        Load();
        return View(model);
    }

接受函数
public ActionResult Edit(ExamshowListModel model, int storeRid = -1)
{

        int id = model.Id;

//这里的 model.showanlist.Count为0,无法收到结果。
for (int i = 0; i <= model.showanlist.Count-1;i++ ){
string s=model.showanlist[i].A;

        }


        Load();
        return View(model);
    }
  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥15 HFSS 中的 H 场图与 MATLAB 中绘制的 B1 场 部分对应不上
    • ¥15 如何在scanpy上做差异基因和通路富集?
    • ¥20 关于#硬件工程#的问题,请各位专家解答!
    • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
    • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
    • ¥30 截图中的mathematics程序转换成matlab
    • ¥15 动力学代码报错,维度不匹配
    • ¥15 Power query添加列问题
    • ¥50 Kubernetes&Fission&Eleasticsearch
    • ¥15 報錯:Person is not mapped,如何解決?