Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/hadoop/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Kendo ui 如何在MVC中将JSON绑定到剑道网格datadource_Kendo Ui_Telerik_Kendo Asp.net Mvc_Telerik Grid - Fatal编程技术网

Kendo ui 如何在MVC中将JSON绑定到剑道网格datadource

Kendo ui 如何在MVC中将JSON绑定到剑道网格datadource,kendo-ui,telerik,kendo-asp.net-mvc,telerik-grid,Kendo Ui,Telerik,Kendo Asp.net Mvc,Telerik Grid,我正在尝试将JSON响应动态绑定到网格。我已经设置了autobind=false,以便控制何时调用ReadData() 下面我有一个简单的例子,我无法开始工作 在视图中(cshtml) 使用chrome中的开发者工具,我可以看到ReadData()的响应是[{“Name”:“Abc”,“Age”:10},{“Name”:“PersonName”,“Age”:25}],但是呈现的网格只显示列名,没有数据列 MyModel是一个简单的类: public class MyModel { pub

我正在尝试将JSON响应动态绑定到网格。我已经设置了
autobind=false
,以便控制何时调用
ReadData()

下面我有一个简单的例子,我无法开始工作

在视图中(cshtml)

使用chrome中的开发者工具,我可以看到
ReadData()
的响应是
[{“Name”:“Abc”,“Age”:10},{“Name”:“PersonName”,“Age”:25}]
,但是呈现的网格只显示列名,没有数据列

MyModel是一个简单的类:

public class MyModel
{
    public string Name { get; set; }
    public int Age { get; set; }
}

Kendo UI MVC网格设计用于在为数据提供服务的操作方法中使用
ToDataSourceResult()
。检查以下文章:

ToDataSourceResult()
将负责执行数据操作(排序、分页等),并以预期的格式提供数据,即:

{
    Data: [
        { "Name": "Abc", "Age": 10 },
        { "Name": "PersonName", "Age": 25 }
    ],
    Total: 2
}
(添加空格是为了可读性,重要的部分是存在
数据
总计

编辑添加:要添加到此答案,控制器代码的示例如下:

public ActionResult ReadData([DataSourceRequest] DataSourceRequest request)
{
    var model = new[]
    {
        new MyModel
        {
            Name = "Abc",
            Age = 10
        }, 
        new MyModel
        {
            Name = "PersonName",
            Age = 25
        }, 
    };
    return Json(model.ToDataSourceResult(request), JsonRequestBehavior.AllowGet);
}
{
    Data: [
        { "Name": "Abc", "Age": 10 },
        { "Name": "PersonName", "Age": 25 }
    ],
    Total: 2
}
public ActionResult ReadData([DataSourceRequest] DataSourceRequest request)
{
    var model = new[]
    {
        new MyModel
        {
            Name = "Abc",
            Age = 10
        }, 
        new MyModel
        {
            Name = "PersonName",
            Age = 25
        }, 
    };
    return Json(model.ToDataSourceResult(request), JsonRequestBehavior.AllowGet);
}