【问题标题】:Infragistics Hierarchical Grid: Bind JsonResult to gridInfragistics Hierarchical Grid:将 JsonResult 绑定到网格
【发布时间】:2014-07-09 02:30:12
【问题描述】:

我在 Infragistics 论坛上发帖无济于事,所以我想问问社区谁可以使用他们的产品。

我正在使用 IgniteUI 实现分层网格,但似乎无法让我的 JsonResult 绑定到网格。网格将以正确的行数呈现,但没有填充任何列。

我有以下网格:

$("#grid").igHierarchicalGrid({
                dataSourceType: "json",
                dataSource: "/Products/GetProducts/",
                odata: "false",
                autoGenerateColumns: "false",
                primaryKey: "Id",
                initialDataBindDepth: 1,
                columns: [
                    { headerText: "Id", key: "Id", dataType: "number" },
                    { headerText: "SKU", key: "SKU", dataType: "string" },
                    { headerText: "UPC", key: "UPC", dataType: "string" },
                    { headerText: "Name", key: "Name", dataType: "string" },
                    { headerText: "ManufacturerId", key: "ManufacturerId", dataType: "number" },
                    { headerText: "ManufacturerSKU", key: "ManufacturerSKU", dataType: "string" },
                    { headerText: "Inventory", key: "Inventory", dataType: "number" },
                    { headerText: "Weight", key: "Weight", dataType: "number" },
                    { headerText: "Price", key: "Price", dataType: "number" },
                    { headerText: "MSRP", key: "MSRP", dataType: "number" },
                    { headerText: "CategoryId", key: "CategoryId", dataType: "number" },
                    { headerText: "Active", key: "Active", dataType: "string" },
                    { headerText: "CreateDate", key: "CreateDate", dataType: "date", format: "MM-d-yyyy, h:mm tt" },
                    { headerText: "UpdateDate", key: "UpdateDate", dataType: "date", format: "MM-d-yyyy, h:mm tt" }
                ],
                features: [
                    {
                        name: "Sorting",
                        type: "local"
                    },
                    {
                        filterExprUrlKey: 'filter',
                        filterLogicUrlKey: 'filterLogic',
                        name: "Filtering",
                        type: "remote",
                        columnSettings: [
                    {
                        columnKey: 'Id',
                        condition: "equals"
                    }
                        ]
                    },
                    {
                        name: 'Paging',
                        type: "local",
                        pageSize: 10
                    }
                ],
                columnLayouts: [
                    {
                        key: "VendorProducts",
                        primaryKey: "Id",
                        foreignKey: "Id",
                        autoGenerateColumns: "false",
                        responseDataKey: 'results',
                        columns: [
                            { headerText: "Id", key: "Id", dataType: "number" },
                            { headerText: "ProductId", key: "ProductId", dataType: "number" },
                            { headerText: "PartnerName", key: "PartnerName", dataType: "string" },
                            { headerText: "VendorSKU", key: "VendorSKU", dataType: "string" },
                            { headerText: "Cost", key: "Cost", dataType: "number" },
                            { headerText: "Inventory", key: "Inventory", dataType: "number" },
                            { headerText: "Active", key: "Active", dataType: "number" }
                        ],
                        features: [
                            {
                                name: "Sorting",
                                type: "local"
                            }]
                    }
                ]
            });

服务器返回的Json如下

var data = [{ "Id": 1032, "SKU": "5_113990", "UPC": "10000001", "Name": "NVG7-3P", "ManufacturerId": 1015, "ManufacturerSKU": "NVGONVG73P", "Inventory": 0, "Weight": 3, "Price": 3026.6, "MSRP": 3799, "CategoryId": 1018, "Active": true, "CreateDate": "\/Date(1398794923467)\/", "UpdateDate": "\/Date(1400000587250)\/", "VendorProducts": [{ "Id": 1046, "ProductId": 1032, "PartnerName": "Direct Buy", "VendorSKU": "113990", "Cost": 0, "Inventory": 0, "Active": true }] }];

当插入dataSource 时会很好地呈现网格,但是当网格调用方法时:

[HttpGet]
        public JsonResult GetProducts()
        {             
            var model = Query.....  
            return Json(model, JsonRequestBehavior.AllowGet);
         }

抛出以下错误:

**Uncaught Error: There was an error parsing the JSON data and applying the defined data schema: The input data doesn't match the schema, the following field couldn't be mapped: VendorProducts** 

我尝试了很多方法,但似乎无法按需加载网格。

【问题讨论】:

    标签: c# infragistics ignite-ui iggrid


    【解决方案1】:

    是 igGrid 的当前已知问题,请参阅:http://www.infragistics.com/community/forums/p/91530/452561.aspx

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-12-04
      • 1970-01-01
      相关资源
      最近更新 更多