MVC3 Razor动态创建表单

1 forms asp.net razor asp.net-mvc-3

首先,我想指出我对这个领域非常新的^ _ ^.

无论如何

我正在做一个带有成绩报告系统的项目,现在我正在使用cshtml来更新usertask.

我的问题是

我目前正在尝试添加表单帖子,但它根本不起作用.

在我看来,我有一个带有usertasks(和其他数据)列表的模型.这些usertasks包含int id和string grade.

我想要做的是foreach usertask创建一个带有自己的提交按钮的表单.表单将包含id的隐藏字段和用于评分的文本框.

我遇到的问题是@Html.Hidden编译器错误消息:CS1973:'System.Web.Mvc.HtmlHelper'没有名为'Hidden'的适用方法,但似乎有一个名称的扩展方法.无法动态分派扩展方法.考虑转换动态参数或调用扩展方法而不使用扩展方法语法.

我假设你不能动态地使用Html.Hidden(我在usertasks列表上使用foreach循环).

任何人都知道如何解决这个问题?我一直在考虑创建偏见,但无法弄清楚你是否可以将参数传递给他们.或者将提交按钮重定向到控制器视图,该视图需要2个参数?

有人有任何例子吗?

求救!

提交一些我一直试图开始工作的代码.

foreach (var tskModel in tskgrpModel.usertasks)
        {
            @tskModel.name

            using (Html.BeginForm("Update", "Teacher", FormMethod.Post))
            {
                if(tskModel.isSet == true)
                {
                    @Html.Hidden("ut_id", tskModel.id )
                    @Html.TextBox("ut_grade",(string)@tskModel.grading);
                }
                else
                {
                    @Html.Hidden("ut_id", -1)
                    @Html.Hidden("ut_id", "NotSet")
                }


                
            }

        }

cel*_*lik 7

taskModel.id是动态变量吗?

如果是这样改变线

@Html.Hidden("ut_id", tskModel.id )
Run Code Online (Sandbox Code Playgroud)

@Html.Hidden("ut_id", (int) tskModel.id )
Run Code Online (Sandbox Code Playgroud)