Asp.net mvc 剑道添加而不是编辑下拉列表项

Asp.net mvc 剑道添加而不是编辑下拉列表项,asp.net-mvc,kendo-ui,selected,selectedvalue,Asp.net Mvc,Kendo Ui,Selected,Selectedvalue,我使用剑道网格内联编辑模式,编辑后,我需要刷新我的DropDownList的数据源 var dropDownList = $("#Domains").data("kendoDropDownList"); dropDownList.dataSource.read(); 原因是我的KendoGrid应该添加和编辑DropDownList使用的数据。 我在编辑KendoGrid上的数据方面没有问题,在下面代码的帮助下,我刷新了DropDownList上的数据

我使用剑道网格内联编辑模式,编辑后,我需要刷新我的DropDownList的数据源

var dropDownList = $("#Domains").data("kendoDropDownList");
                    dropDownList.dataSource.read();
原因是我的KendoGrid应该添加和编辑DropDownList使用的数据。 我在编辑KendoGrid上的数据方面没有问题,在下面代码的帮助下,我刷新了DropDownList上的数据

var dropDownList = $("#Domains").data("kendoDropDownList");
                    dropDownList.dataSource.read();
#Domains
是我的DropDownList的ID

即使我编辑了DropDownList上已经选中的数据,一切都正常。 但问题是在KendoGrid(内联模式)中添加新项并同时编辑DropDownList中选择的一个旧项之后出现的

在这种情况下,剑道不会编辑项目,但会将已编辑的项目作为新项目添加到数据源中,我们将旧项目和已编辑的项目作为两个单独的项目。 我不知道我是否正确地传达了情况

我使用MVC,我定义数据源的方式如下:

.DataSource(dataSource => dataSource
                                            .Ajax()
                                            .Events(events => { events.Error("result_handler"); })
                                            .Model(model => model.Id(p => p.Id))
                                            .Create(create => create.Action("AddDomain", "Service", new { customerID = ViewBag.CustomerId }))
                                            .Read(read => read.Action("GetDomainListForGrid", "Service", new { customerID = ViewBag.CustomerId }))
                                            .Update(update => update.Action("EditDomain", "Service"))
                                            .Destroy(destroy => destroy.Action("DeleteDomain", "Service"))
                                        )

如你所见,我设置了模型。我喜欢上面的。

不是一个好主意!但在选择DropDownList项之前刷新网格上的数据将有助于:

var grid = $("#grid").data("kendoGrid");
                    grid.dataSource.read();

您在模型中使用什么作为更新条目的
id
?最后我用我的答案更新了我的文本。KendoUI根据id的值决定创建和更新,这就是为什么我问您使用了什么。您是否检查了旧记录的
id
是否正确(添加新项之前和之后相同)?最简单的方法是在网格中定义一列来显示id。现在我检查了,它只给id加了“0”。我如何更新它?我也需要为网格调用“.dataSource.read()”吗?