什么时候Request.Params和Request.Form不同?

时间:2020-03-05 18:38:33  来源:igfitidea点击:

我最近遇到了一个问题,如果使用Request.Form访问该值,则为null;如果使用Request.Params进行检索,则该值为好。这些方法之间可能有什么区别?

解决方案

回答

原因是我要检索的值是从表单元素获取的,但是提交是通过链接+ JQuery完成的,而不是通过表单按钮的提交。

回答

Request.Form仅包含通过表单发布的变量,而Request.Params包含发布的表单变量和获取指定为URL参数的变量。

回答

Request.Params包含QueryString,Form,Cookie和ServerVariables(按此顺序添加)的组合。

区别在于,如果我们在QueryString和Form中都有一个名为" key1"的表单变量,则Request.Params [" key1"]将返回QueryString值,而Request.Params.GetValues(" key1")将返回一个[querystring-value,form-value]的数组。

如果存在多个具有相同键的表单值或者cookie,则这些值将被添加到GetValues返回的数组中(即,GetValues将不返回锯齿状的数组)