我已经设置了一个WCF服务来提供JSON中的表数据:
{
"d":{
"__type":"ExtJsDataResults:#MyProject.WebServices",
"rows":[
["TitleA","1.98","English"],
["TitleB","1.98","Spanish"],
["TitleC","1.98","Korean"]
],
"totalcount":10
}
}
如何将其读入ExtJS商店?我需要一个JsonStore开始,但是然后ArrayReader类型解释行数据。像这样:
var itemStore = new Ext.data.JsonStore({
proxy: new Ext.data.HttpProxy({
url: "../WebServices/ItemsService.svc/getData",
method: "GET"
}),
root: "d.rows",
totalProperty: "d.totalcount",
fields: ['Book Title', 'Unit Price', 'Language'],
reader: new Ext.data.ArrayReader({},
Ext.data.Record.create([
{name:'Book Title'},
{name:'Unit Price'},
{name:'Language'}
])
)
});
当然,这不起作用。当绑定到具有分页工具栏的DataGrid时,它会显示空行,但它们的正确数量和分页工具栏值都是正确的。
有什么想法吗?
答案 0 :(得分:0)
固定。更改为常规Store并将“root”和“totalProperty”值添加到ArrayReader的config对象。
答案 1 :(得分:0)
我也遇到了这个问题但完成了这个解决方案 - http://dotnetkeeda.blogspot.in/2013/11/working-with-sencha-extjs-and-wcf.html 感谢作者提供了很好的重要提示。