带有 Dojo JsonRest 内存存储的 ASP.Net QueryString 排序参数
Posted
技术标签:
【中文标题】带有 Dojo JsonRest 内存存储的 ASP.Net QueryString 排序参数【英文标题】:ASP.Net QueryString Sort Parameter with Dojo JsonRest Memory Store 【发布时间】:2015-06-24 22:57:23 【问题描述】:我制作了一个 gridx 网格,它使用来自 dojo 框架的 JsonRest 内存存储 http://dojotoolkit.org/reference-guide/1.10/dojo/store/JsonRest.html
问题是我不知道如何从查询字符串中提取排序参数。
从 JsonRest 调用格式化的 url 是
/admin/sales?sort(+DealershipName)
使用以下语句会给我一个空错误
String sort = Request.QueryString["sort"].ToString();
查看调试器,我看到以下内容(我需要更多代表来发布图像:()
好的,我可以看到以下变量包含此值。
Request.QueryString = sort(+DealershipName)
type : System.Collections.Specialized.NameValueCollection
System.Web.HttpValueCollection
但数组为空。
我想我可以做两件事。自己解析字符串或重载 dojo JsonRest Memory 存储。解析字符串似乎更容易,但如果有人有任何想法或知道任何可以帮助我的库。我将不胜感激。
【问题讨论】:
【参考方案1】:dojo/store/JsonRest
有一个 sortParam
属性,您可以将其设置为要使用的标准查询参数的名称,而不是 sort(...)
(它默认使用它来避免与任何标准查询参数发生冲突)。
例如,将sortParam: 'sort'
添加到传递给JsonRest
构造函数的属性将导致查询字符串包含sort=+DealershipName
。
http://dojotoolkit.org/reference-guide/1.10/dojo/store/JsonRest.html#sorting
如果+
也存在问题,您还可以将ascendingPrefix
覆盖为空字符串(''
)。请注意,降序排序仍将由前导 -
指示(可通过 descendingPrefix
控制)。
【讨论】:
非常感谢,我不知道我是怎么错过的。以上是关于带有 Dojo JsonRest 内存存储的 ASP.Net QueryString 排序参数的主要内容,如果未能解决你的问题,请参考以下文章
无法访问 Dojo JsonRest 存储中的数据,目标是 PHP
dojo gridx 不会从 JSONRest 存储中读取 - 我在这里缺少啥?
Dojo + DataGrid + JsonRest + 自定义 json
如何在没有 REST 请求的情况下在 GUI 中基于 dojo.store.jsonrest 对 Dojo DataGrids 进行排序?