我正在努力将kendo网格绑定到Web API。 Web API托管在Azure辅助角色中(尚未发布)。并且Web API被装饰以便与跨域一起工作,即为Web API启用CORS。
让我们看看我写的代码。
Web API中的操作方法如下所示。
public JToken Get()
{
JToken json = JObject.Parse(
"{ \"firstName\": \"John\",
\"lastName\": \"Smith\",
\"isAlive\": true,
\"age\": 25,
\"height_cm\": 167.6,
\"address\":
{
\"streetAddress\": \"21 2nd Street\",
\"city\": \"New York\",
\"state\": \"NY\",
\"postalCode\": \"10021-3100\"
},
\"phoneNumbers\":
[{
\"type\": \"home\",
\"number\": \"212 555-1234\"
},
{
\"type\": \"office\",
\"number\": \"646 555-4567\"
}]
}"
);
return json;
}
当我执行此web api时,我们将获得IP地址为“127.0.0.1”的模拟器,并使用控制器"TestController"
。
当我在浏览器中执行上面的api时,我完全得到了JSON数据,但是当我使用相同的方法来绑定网格时,一切都是徒劳的。
用于绑定数据的代码是
$("#dw_report_container1").kendoGrid({
dataSource: {
type: "json",
transport: {
read: {
url: "http://127.0.0.1/test",
dataType: "json"
}
},
},
height: 500,
scrollable: true,
selectable: true
});
我也不例外。
答案 0 :(得分:0)
最后,经过长时间的努力,我得到了解决方案:(。我在使用kendo网格时发现了一个奇怪的事情。每当我们使用项目中的模型并将模型返回到kendogrid的数据源时,它就会在内部为它创建一个模型。当我使用上面的示例json时,它(kendogrid)不会创建网格绑定的模型。因此问题就出现了。最后,我得出结论,最好有一个模式/数据源中的模型(剑道网格)。过去我没有:(谢谢。