1

我正在尝试使用远程数据源实现W2UI 网格,我最初使用返回结果的 aspx 页面使其工作。

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

我遇到的问题或问题是经常需要破解和削减我返回的数据:“ {\"status\":\"success\",\"total\":\"X\",\"records\":”....

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

我希望我遗漏了一些东西,而不是 W2UI 中的缺陷,总是首先需要状态/总结果。

4

1 回答 1

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;
}

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

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 的“parse”回调在客户端将其解析回(假设您使用的是 jQuery):

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

希望这可以帮助某人。

于 2015-04-01T21:44:31.203 回答