网格:远程数据源

时间:2014-09-09 16:49:42

标签: jquery asp.net webforms w2ui

我正在尝试使用远程数据源实现 W2UI Grid ,我最初使用aspx页面返回结果。

我已经转移到API,因此可以提取和更新数据

我遇到的问题或问题是不断需要通过以下方式破解和删除我返回的数据: “{\"status\":\"success\",\"total\":\"X\",\"records\":” ....

而不仅仅是返回IEnumerable,这导致了其他组件的问题,因为我现在需要复制逻辑等

我希望我错过了一些东西而且W2UI中的缺陷并不是首先需要状态/总结果。

1 个答案:

答案 0 :(得分:0)

似乎确实需要总数和状态才能运作。使用C#我创建了一个或多或少自动处理这个的类:

// a few using statements that are needed
using NewtonSoft.Json;
using System.Data;
using System.Data.SqlClient; 

// the class we will need to Serialize
public class w2return
{
    public string status = "success";
    public int total = 0;
    public DataTable records;
}

现在,在您的网络服务功能中,执行以下操作:

w2return x = new w2return();
// write some code to return a DataTable
x.records = SomeCodeThatReturnsDataTable();
x.total = x.records.Rows.count();

return JsonConvert.SerializeObject(x); // this assumes your function returns a string

因为序列化过程将整个事物包装在一个名为" d"的成员变量中,所以你需要使用w2ui"解析"在客户端解析它。回调(假设你使用的是jQuery):

parser: function (responseText) { return $.parseJSON($.parseJSON(responseText).d); }

希望这有助于某人。