我正在使用jqGrid
向用户显示一些数据。所需的功能之一是用户能够搜索网格。我正在使用WCF数据服务来获取此数据并将其返回。
当我第一次开始jqGrid开发时,我只需要分页(不需要搜索),并且成功地能够使用以下方法:
[WebGet(ResponseFormat = WebMessageFormat.Json)]
public String GetStuff(int? page, int? rows)
{
// pagination going on in here
}
然后我需要搜索,所以我添加了一个string
类型的参数:
[WebGet(ResponseFormat = WebMessageFormat.Json)]
public String GetStuff(int? page, int? rows, string search)
{
// more stuff going on in here
}
然后我收到400 Bad Request
错误。我假设它是因为搜索参数,我只是不明白为什么int
有效(甚至bool
有效),但string
没有。它与WCF数据服务是RESTful有什么关系吗?
我当然仔细检查了jqGrid发送的查询字符串(通过ajax)并且它与param名称匹配。 jqGrid发送的一些额外的查询字符串参数没有被使用(忽略它们与我的原始分页代码一起正常工作)
答案 0 :(得分:1)
查询URL中的字符串文字必须用单引号引用。所以上面的服务操作将被调用如下: ?/ GetStuff页= 1&安培;行数= 10安培;搜索= '约翰' 你的查询字符串看起来像那样吗?