gpt4 book ai didi

c# - Kendo UI Grid 与外部服务 JSON 绑定(bind)

转载 作者:太空宇宙 更新时间:2023-11-03 16:17:01 25 4
gpt4 key购买 nike

我有现有的休息服务,我正在尝试在 Kendo Grid 中显示返回值。

返回结构:

[{"Form":"xxx","Revision":x,"Status":"xxx"}]

我使用的是 Razor 语法,所以我创建了这样的网格:

@(Html.Kendo()
.Grid<FormViewModel>()
.Name("form-list")
.AutoBind(false)
.Columns(columns =>
{
columns.Bound(m => m.Form).Title("Name");
columns.Bound(m => m.Revision).Title("Revision");
})
.DataSource(dataSource => dataSource
.Ajax()
.Read(read => read.Url(string.Format("{0}/{1}", Html.WebApiBaseUrl(), "Forms")).Type(HttpVerbs.Get))
.Model(model =>
{
model.Id(m => m.Form);
model.Field(m => m.Revision);
})
.Events(events => events.Error("errorHandler"))))

但是我的网格无法绑定(bind)到数据源。据我了解,Kendo 需要 ToDataSourceResult() 方法调用才能执行正确的 JSON 格式设置。但是否可以直接从客户端进行?

Controller :

public class FormController : Controller
{
public ActionResult GetFormList()
{
return View();
}

}

最佳答案

不确定为什么它不适用于 Razor,但我能够解决该问题。所以我这样创建我的网格:

<div id="form-list-view" class="k-content">
<div id="form-list-grid"></div>
</div>

var formListDataSource = new kendo.data.DataSource({
transport: {
read: {
url: "@Url.Content(string.Format("{0}/{1}", Html.WebApiBaseUrl(), "Forms"))",
dataType: "json"
}
},
schema: {
model: {
id: "Form",
fields: {
Form: { type: "string" },
Revision: { type: "number" },
Status: { type: "string" }
}
}
},
pageSize: 10
});

$("#form-list-grid").kendoGrid({
autoBind: false,
dataSource: formListDataSource,
pageable: true,
columns: [
{
field: "Form",
title: "Name"
},
{
field: "Revision",
title: "Revision"
},
{
field: "Status",
title: "Status"
}
]
});

现在我有了预期的行为并且我的网格正确绑定(bind)到返回的数据。

关于c# - Kendo UI Grid 与外部服务 JSON 绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15521875/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com