Asp.net mvc 4 剑道ui网格,不在批创建时传递参数

Asp.net mvc 4 剑道ui网格,不在批创建时传递参数,asp.net-mvc-4,kendo-ui,kendo-grid,Asp.net Mvc 4,Kendo Ui,Kendo Grid,我有一个网格,我正在尝试保存一些模型数据这是下面的网格: @(Html.Kendo().Grid(Model.TeachingLearningList) .Name("TeachLearnGrid") .Columns(columns => { columns.Bound(p => p.ID).Width(50).Hidden(true); columns.Bound(p => p.SelectedSubject).Title("Subject").Client

我有一个网格,我正在尝试保存一些模型数据这是下面的网格:

@(Html.Kendo().Grid(Model.TeachingLearningList)
.Name("TeachLearnGrid")
.Columns(columns =>
{
    columns.Bound(p => p.ID).Width(50).Hidden(true);
    columns.Bound(p => p.SelectedSubject).Title("Subject").ClientTemplate("#=SelectedSubject.Name#").Width(150);
    columns.Bound(p => p.StrategyItem).Title("Strategy").ClientTemplate("#=StrategyItem.Name#").Width(200);
    columns.Bound(p => p.CreatedDateTime).Format("{0:dd MMM yy HH:mm}").Title("Created Date");
    columns.Bound(p => p.ReminderDate).Format("{0:dd MMM yy HH:mm}").Title("Reminder Date Time").Width(200);
    columns.Bound(p => p.CompletedDateTime).Format("{0:dd MMM yy HH:mm}").Title("Completed Date");
    columns.Bound(p => p.Completed).Title("Completed");


})
.Pageable()
.ToolBar(toolbar =>
{
    toolbar.Create();
    toolbar.Save().HtmlAttributes(new { id = "TLSave" });
})
.Editable(editable => editable.Mode(GridEditMode.InCell))
.Scrollable()
.DataSource(dataSource => dataSource
                .Ajax()
                .Model(model =>
                {
                    model.Id(p => p.ID);
                    model.Field(p => p.ID).Editable(false);
                    model.Field(p => p.SelectedSubject).DefaultValue(ViewData["defaultSubject"] as DataAccessLibrary.Classes.Subject).Editable(true);
                    model.Field(p => p.StrategyItem).DefaultValue(ViewData["defaultStrategy"] as DataAccessLibrary.Classes.ParStrategy).Editable(true);
                    model.Field(p => p.CreatedDateTime).Editable(false);
                    model.Field(p => p.CompletedDateTime).Editable(false);
                    model.Field(p => p.ReminderDate).DefaultValue(DateTime.Now);


                })
                .ServerOperation(false)

                .Batch(true)
                .Events(events => events.Error("error_handler"))
                .Read(read => read.Action("Get_TeachingLearning", "Student").Data("thisStudent"))
                .Create(create => create.Action("Create_TeachingLearning", "Student").Data("thisStudent"))
                .Update(update => update.Action("Update_TeachingLearning", "Student").Data("thisStudent"))
)

)   
然后,我使用这段JavaScript附加studentid

function thisStudent() {
    var studentID = $("#Students").val();

    if (studentID == 'undefined' || studentID < 1) {
        studentID = 0;
    }



    console.log("This Student Fired: " + studentID);
    return
    {
        currentID: studentID
    };
}
函数thistudent(){
var studentID=$(“#Students”).val();
如果(studentID==“未定义”| | studentID<1){
studentID=0;
}
log(“该学生被解雇:+studentID”);
返回
{
当前ID:studentID
};
}
然后最后将其发送到该操作

[HttpPost]
    public JsonResult Create_TeachingLearning([DataSourceRequest] DataSourceRequest request,[Bind(Prefix = "models")]IEnumerable<StudentToParStrategy> students , int currentID = 0  )
    {
        List<StudentToParStrategy> results = new List<StudentToParStrategy>();

        //if (studentItems != null && ModelState.IsValid)
        //{
        //    foreach (StudentToParStrategy strategy in studentItems)
        //    {

        //        results.Add(strategy);
        //    }
        //}

        return Json(results.ToDataSourceResult(request, ModelState));
    }
[HttpPost]
public JsonResult Create_TeachingLearning([DataSourceRequest]DataSourceRequest[Bind(Prefix=“models”)]IEnumerable students,int currentID=0)
{
列表结果=新列表();
//if(studentItems!=null&&ModelState.IsValid)
//{
//foreach(学生项目中的学生策略)
//    {
//结果:增加(战略);
//    }
//}
返回Json(results.ToDataSourceResult(request,ModelState));
}
现在由于某种原因,currentID总是以零的形式返回,无论我尝试做什么,我似乎都无法得到一个值

如果有人能说明我做错了什么,那就太好了,因为我还没有找到任何解决办法

我可以看到我创建的项目已经被传递进来了,但是剑道一定在幕后做了一些鬼鬼祟祟的事情,把这些数据传递出去

正如你可能知道的,我对MVC/剑道世界还是相当陌生的


提前谢谢你的建议

看到这一点,它可能会帮助你:你的网格中
学生在哪里。我在您的网格中没有看到任何
Students
实体。此网格是整个系统的一部分,我有一个组合框,其中有一个学生名,后面有一个值,因此返回thisStudent()。它是模型的一个属性,但我没有将其公开给网格,因为当创建一个新项目时,它将没有与之关联的学生id。