Подтвердить что ты не робот

Когда меняются Request.Params и Request.Form?

Недавно я столкнулся с проблемой, когда значение было null при доступе с помощью Request.Form, но отлично, если было получено с помощью Request.Params. Каковы различия между этими методами, которые могут вызвать это?

4b9b3361

Ответ 1

Request.Form включает только переменные, отправленные через форму, в то время как Request.Params включает в себя как опубликованные переменные формы, так и переменные, заданные в качестве параметров URL.

Ответ 2

Request.Params содержит комбинацию QueryString, Form, Cookies и ServerVariables (добавляется в этом порядке).

Разница в том, что если у вас есть переменная формы, называемая "ключ1", которая находится как в QueryString, так и в Form, тогда Request.Params [ "key1" ] вернет значение QueryString и Request.Params.GetValues ​​( "key1" ) вернет массив из [querystring-value, form-value].

Если имеется несколько значений формы или файлов cookie с тем же ключом, то эти значения будут добавлены в массив, возвращаемый GetValues ​​(т.е. GetValues ​​не вернет зубчатый массив)

Ответ 3

Причина в том, что значение, которое я извлекал, было из элемента формы, но передача была выполнена через ссылку + JQuery, а не через кнопку формы.