为了向 webapi 发送 kendo 数据源请求,我将 kendo dataSourcerequest 序列化为字符串,以在 webapi 中应用过滤和排序操作。但是,当将字符串反序列化为 dataSourcerequest 时,我收到“预期 token ”错误
Controller :
public ActionResult GetGridData([DataSourceRequest] DataSourceRequest request)
{
//converting object to string
string jsonStr = JsonConvert.SerializeObject(request);
}
网络接口(interface):
public ActionResult GetGridData(string request)
{
//converting string into object
string jsonStr = JsonConvert.DeSerializeObject<DataSourceRequest>(request);
//Here error is throwing as "Expected Token"
}
数据源请求:
{ 页面:1,PageSize:10,排序:[],过滤器:{ [{“value”:“事故响应费法”,“operator”:“eq”,“field”:“subTopic”}] ,"逻辑":"或"} }
最佳答案
目前 Telerik 不支持序列化 DataSourceRequest。此类在类内部实现接口(interface),防止类被序列化。
我能想到的处理此问题的最佳方法是创建一个自定义类,将 DataSourceRequest 转换为自定义的 serialisabe 类。这还需要您包含一个函数以将自定义类转换回 DataSourceRequest Telerik 类。
当前有对此功能的请求。 请在这里投票尝试让 Telerik 实现此功能: http://kendoui-feedback.telerik.com/forums/127393-kendo-ui-feedback/suggestions/17207828-serialization-support-of-datasourcerequest-and-app
关于c# - Kendo DataSource 请求序列化和反序列化不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48656376/