Вопрос

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

Это было полезно?

Решение

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

Другие советы

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

Разница в том, что если у вас есть переменная формы с именем «key1», которая присутствует как в QueryString, так и в форме, то Request.Params["key1"] вернет значение QueryString, а Request.Params.GetValues("key1") вернет значение массив [значение строки запроса, значение формы].

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

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top