WCF 表数据到 ExtJS 存储

Posted

技术标签:

【中文标题】WCF 表数据到 ExtJS 存储【英文标题】:WCF table data to ExtJS Store 【发布时间】:2010-11-04 13:51:23 【问题描述】:

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

有什么想法吗?

【问题讨论】:

【参考方案1】:

已修复。更改为常规 Store,并将“root”和“totalProperty”值添加到 ArrayReader 的配置对象中。

参见。这个Sencha Forum thread

【讨论】:

【参考方案2】:

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

【讨论】:

以上是关于WCF 表数据到 ExtJS 存储的主要内容,如果未能解决你的问题,请参考以下文章

如何在面板-EXTJS内的列表/表中加载动态数据

如何创建更新数据库日志表的 wcf 服务或 Web 服务?

ExtJS 间隔计时器获取数据并在网格中插入新行

ExtJS 4 Chart - 更改轴、系列和存储

将 REST 方法添加到 WCF 数据服务?

基于ExtJs6前台,SpringMVC-Spring-Mybatis,resteasy,mysql无限极表设计,实现树状展示数据(treepanel)