Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/xamarin/3.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
C# 调用读取后未填充剑道UI网格_C#_.net_Kendo Ui_Kendo Grid_Kendo Asp.net Mvc - Fatal编程技术网

C# 调用读取后未填充剑道UI网格

C# 调用读取后未填充剑道UI网格,c#,.net,kendo-ui,kendo-grid,kendo-asp.net-mvc,C#,.net,Kendo Ui,Kendo Grid,Kendo Asp.net Mvc,好的,我还有一个,我确信我又错过了一些简单的东西。用json结果集填充剑道网格。加载由剑道下拉列表控件中的选择触发。我可以看到数据从我的webapi返回并转换为json结果。但数据不会显示在网格中 我错过了什么做错了 以下是如何添加轴网视图: <div id="messageGridArea"> @Html.Partial("Messages") </div> 以下是网格参数的过滤器: function filterGridMessages() { re

好的,我还有一个,我确信我又错过了一些简单的东西。用json结果集填充剑道网格。加载由剑道下拉列表控件中的选择触发。我可以看到数据从我的webapi返回并转换为json结果。但数据不会显示在网格中

我错过了什么做错了

以下是如何添加轴网视图:

<div id="messageGridArea">
    @Html.Partial("Messages")
</div>
以下是网格参数的过滤器:

function filterGridMessages() {
    return { importdate: $("#importDates").val() };
}
以下是填充网格的事件:

function OnImportDatesChanged(e) {
    var grid = $("#clientMessages").data("kendoGrid");
    grid.dataSource.read();
}
以下是网格定义:

@(Html.Kendo().DropDownList()
    .Name("importDates")
    .CascadeFrom("clients")
    .OptionLabel("Select Import Date...")
    .DataSource(source => {
        source.Read(read =>
        {
            read.Action("GetDistinctImportDates", "Home").Data("filterImportDates");
        })
        .ServerFiltering(true); 
     })
     .AutoBind(false)
     .Enable(false)
     .Events(e => e.Change("OnImportDatesChanged"))
)
@(Html.Kendo().Grid<Pulse.Data.Model.ImportHeader>()
    .Name("clientMessages")
    .AutoBind(false)
    .Filterable()
    .Groupable()
    .Sortable()
    .Pageable()
    .Scrollable()
    .DataSource(dataSource => dataSource
        .Ajax()
        .Model(model => model.Id(p => p.ImportId))
        .ServerOperation(false)
        .Read(read =>
            read.Action("GetImportMessages", "Home").Data("filterGridMessages")
         )
    )
    .Columns(columns =>
    {
        columns.Bound("ImportStatus").Title("I").Width("3%");
        columns.Bound("ImportTime").Title("Import Time");
        columns.Bound("RecordStatus").Title("Status").Filterable(true).Sortable(true).Width("7%");
        columns.Bound("RecordState").Title("State").Filterable(true).Sortable(true).Width("7%");
        columns.Bound("RecordAction").Title("Action").Filterable(true).Sortable(true).Width("7%");                
    })
)
@(Html.Kendo().Grid())
.Name(“客户端消息”)
.AutoBind(假)
.可过滤()
.Groupable()
.Sortable()
.Pageable()
.Scrollable()
.DataSource(DataSource=>DataSource
.Ajax()
.Model(Model=>Model.Id(p=>p.ImportId))
.ServerOperation(错误)
.Read(Read=>
read.Action(“GetImportMessages”、“Home”).Data(“filterGridMessages”)
)
)
.列(列=>
{
列。装订(“进口状态”)。标题(“I”)。宽度(“3%”;
列。绑定(“导入时间”)。标题(“导入时间”);
列。绑定(“记录状态”)。标题(“状态”)。可过滤(真)。可排序(真)。宽度(“7%”);
列。绑定(“记录状态”)。标题(“状态”)。可过滤(真)。可排序(真)。宽度(“7%”);
列。绑定(“记录动作”)。标题(“动作”)。可过滤(真)。可排序(真)。宽度(“7%”);
})
)
最后是读取数据的控制器代码:

public JsonResult GetImportMessages(string importdate)
{
    IEnumerable<ImportHeader> messages = null;
    var msgs = client.GetStringAsync(string.Format("api/importheaders?$filter=RecordSource eq '{0}'", importdate)).Result;
    if (!string.IsNullOrWhiteSpace(msgs))
        messages = JsonConvert.DeserializeObject<IEnumerable<ImportHeader>>(msgs);
    return Json(messages, JsonRequestBehavior.AllowGet);
}
公共JsonResult GetImportMessages(字符串importdate) { IEnumerable messages=null; var msgs=client.GetStringAsync(string.Format(“api/importheaders?$filter=RecordSource eq'{0}',importdate)).Result; 如果(!string.IsNullOrWhiteSpace(msgs)) messages=JsonConvert.DeserializeObject(msgs); 返回Json(消息,JsonRequestBehavior.AllowGet); }
网格需要数据源结果

您应该得到这样的结果(尚未测试):

公共JsonResult GetImportMessages([DataSourceRequest]DataSourceRequest请求,字符串importdate) { IEnumerable messages=null; var msgs=client.GetStringAsync(string.Format(“api/importheaders?$filter=RecordSource eq'{0}',importdate)).Result; 如果(!string.IsNullOrWhiteSpace(msgs)) messages=JsonConvert.DeserializeObject(msgs); 返回Json(messages.ToDataSourceResult(request),JsonRequestBehavior.AllowGet); }
public JsonResult GetImportMessages([DataSourceRequest] DataSourceRequest request, string importdate)
{
    IEnumerable<ImportHeader> messages = null;

    var msgs = client.GetStringAsync(string.Format("api/importheaders?$filter=RecordSource eq '{0}'", importdate)).Result;
    if (!string.IsNullOrWhiteSpace(msgs))
        messages = JsonConvert.DeserializeObject<IEnumerable<ImportHeader>>(msgs);

    return Json(messages.ToDataSourceResult(request), JsonRequestBehavior.AllowGet);
}