Telerik MVC网格重新绑定崩溃



按照Telerik Mvc Grid Demo中设置的模式进行插入和编辑,直到控制器方法返回为止。

见:http://demos.telerik.com/aspnet-mvc/razor/Grid/EditingAjax?theme=vista

方法调用到我的存储库函数,成功更新数据库;但是,示例中的返回代码如下所示

[AcceptVerbs(HttpVerbs.Post)]        
[CultureAwareAction]        
[GridAction]        
public ActionResult _InsertAjaxEditing()
{
    EditableProduct product = new EditableProduct();            
    if (TryUpdateModel(product)) {
        SessionProductRepository.Insert(product);
    }            
    return View(new GridModel(SessionProductRepository.All()));        
}

直到返回行,所以我尝试:

  1. 返回视图(new GridModel(myTypeRepository.All);
  2. 返回视图(new GridModel(mytypererepository . all . tolist ());
  3. 返回视图(new GridModel(myTypeRepository.All.ToArray());
  4. 返回视图(new GridModel(myTypeRepository.All);
  5. 返回视图(new GridModel(mytypererepository . all . tolist ());
  6. 返回视图(new GridModel(myTypeRepository.All.ToArray());
  7. 返回视图(GridModel (myTypeRepository.All))
  8. 返回视图(GridModel (myTypeRepository.All.ToList ()))
  9. 返回视图(GridModel (myTypeRepository.All.ToArray ()))

所有这些都导致了一个无法遵循的异常,因为它指向Telerik文件:GridActionAttribute.cs.

现在,因为它出现在方法的末尾,所以我不能确定它是返回语句还是html.Telerik.Grid。但是,正如我所说,我遵循了演示中的模式:

@(Html.Telerik().Grid<BerettaFarms.Models.FoodKind>()
    .Name("myName")
    .ToolBar(commands => commands.Insert())
    .DataKeys(keys => keys.Add(c => c.myTypeId))
    .DataBinding(dataBinding => {
        dataBinding.Ajax()
            .Select("SelectAjaxEditing", "myController")
            .Insert("InsertAjaxEditing", "myController")
            .Update("SaveAjaxEditing", "myController")
            .Delete("DeleteAjaxEditing", "myController");
    })       
    .Columns(columns => {            
        columns.Bound(o => o.Name).Width(200);            
        columns.Bound(o => o.Description).Width(400);
        columns.Command(commands => {
            commands.Edit();
            commands.Delete();
        }).Width(200);  
    })
    .DataBinding(dataBinding => dataBinding.Ajax().Select("AjaxIndex", "myController"))
    .Editable(editing => editing.Mode(GridEditMode.InLine))               
    .Sortable()
    .Scrollable(h => h.Height("700px"))       
    .Groupable()        
    .Filterable()
) 

如果有人知道为什么重新绑定失败了?或者如果是其他原因,请告诉我。

事实证明,这是与工具相关的问题之一,而不是与内容相关的问题。当您删除此方法中的所有断点并让代码运行时,它会按预期工作。不知何故,当处于调试模式时,设置了断点,它抛出一个错误并停止应用程序。

最新更新