Я действительно не могу узнать, что на самом деле является различием между этими двумя методами в C# /. NET.В чем отличия между HttpContext.Current.Items [] и HttpContext.Current.Request []?
Фактически они должны делать те же действия!
Я действительно не могу узнать, что на самом деле является различием между этими двумя методами в C# /. NET.В чем отличия между HttpContext.Current.Items [] и HttpContext.Current.Request []?
Фактически они должны делать те же действия!
Первый содержит безопасное место хранения для чтения/записи, которое может использоваться через весь HTTP-запрос. Вы можете использовать его, например, для хранения некоторого объекта в методе Begin_Request, и он будет доступен до отображения страницы. Это похоже на сеанс, но он живет только на протяжении всего одного HTTP-запроса. Вы можете получить доступ к нему повсюду во время этого запроса, и это зависит только от контекста текущего запроса.
Второй является хранилищем только для чтения для строки запроса, параметрами POSTed формы, переменными сервера и куки.
Items
- это имяValueCollection, полезное для хранения и совместного использования данных в течение срока действия HTTP-запроса. В то же время Request
предоставляет доступ и методы, специфичные для HTTP-запроса. Однако не методы.
Второй также содержит переменные сервера и файлы cookie. Если возможно, используйте 'Request.Form' или' Request.QueryString' только для получения конкретных данных, которые вам нужны. – Guffa
@ Guffa, да, вы абсолютно правы. Спасибо за указание на это. Я обновил свой ответ. –