我需要将列表传递给size_t
视图,但会出现此错误:
System.Collections.Generic.IEnumerable不包含si_id的定义,也没有扩展方法si_id接受System.Collections.Generic.IEnumerable类型的第一个参数(你是否缺少using指令或程序集引用? )
查看
IEnumerable
控制器
@model IEnumerable<acgs_qm.Models.CreateStudent>
<div class="editor-label">
@Html.LabelFor(model => model.si_id) //Error
</div>
<div class="editor-field">
@Html.TextBoxFor(model => model.si_id, new { @readonly = "readonly" })
@Html.ValidationMessageFor(model => model.si_id)
</div>
<div class="editor-label">
@Html.LabelFor(model => model.si_fname)
</div>
<div class="editor-field">
@Html.EditorFor(model => model.si_fname)
@Html.ValidationMessageFor(model => model.si_fname)
</div>
//etc
我无法更改[HttpGet]
public ActionResult RegisterStudent()
{
Models.ModelActions action = new Models.ModelActions();
var model = new acgs_qm.Models.CreateStudent
{
GradeLevel = action.getGrade(),
Guardian = action.getGuardian(),
si_id = action.getcode("student_info_tb", "si_id", "1")
};
List<CreateStudent> stud = new List<CreateStudent>();
stud.Add(model);
return View(stud);
}
,因为我正在传递我的帖子的价值
IEnumerable
答案 0 :(得分:2)
如果您的观点仅用于创建一个学生记录,那么请传入一个学生,而不是一个&#39;只有一行。
将您的@model
更改为:
@model acgs_qm.Models.CreateStudent
你的Controller行动:
return View(model); // model is a single student record
答案 1 :(得分:1)
我想要显示列表中必须循环的所有学生,例如
@model IEnumerable<acgs_qm.Models.CreateStudent>
@foreach (var student in Model) {
<div class="editor-label">
@Html.LabelFor(m => student.si_id)
</div>
@* etc ... *@
}