WCF表数据到ExtJS Store

时间:2010-11-04 13:51:24

标签: wcf extjs javascript

我已经设置了一个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时,它会显示空行,但它们的正确数量和分页工具栏值都是正确的。

有什么想法吗?

2 个答案:

答案 0 :(得分:0)

固定。更改为常规Store并将“root”和“totalProperty”值添加到ArrayReader的config对象。

比照这Sencha Forum thread

答案 1 :(得分:0)

我也遇到了这个问题但完成了这个解决方案 - http://dotnetkeeda.blogspot.in/2013/11/working-with-sencha-extjs-and-wcf.html 感谢作者提供了很好的重要提示。