ASP.NET 中怎么分别 Request 同名参数

作者:vkvi 来源:ITPOW(原创) 日期:2010-12-13

ASP 中,可以用 Request.QueryString("id").Count 来获取一共传了几个同名的 id 参数,再用 Request.QueryString("id")(i) 来分别获取各个参数。ASP.NET 中怎么办呢?

用 Request.QueryString.GetValues

如果只有一个 id,那么我们取值就直接用 Request.QueryString["id"],如果有多个,这样取也不会出错,只是取出来各个值之间是用英文逗号(,)隔开的,要想分别获取各个 id,可用 Request.QueryString.GetValues 返回 string 数组。

只有 GetKey 没有 GetKeys

一个 Key 可以对应多个 Value,但一个 Value 只能对应一个 Key,所以 GetValues 要用复数,而 GetKey 要用单数。

考察这个 QueryString:id=1&id=2&p=3

Request.QueryString.GetKey(1) 的值是多少?id 还是 p?应该是 p,也就是说前面两个 Key 都是 id,实际上它就是一个 Key,那么第二个 Key(用 1 表示)就是 p 了。

Request.Form 与 Request.QueryString 类似。

相关文章