HTML Diff
0 added 0 removed
Original 2026-01-01
Modified 2026-03-10
1 <p>Теги: asp.net core, items, коллекция</p>
1 <p>Теги: asp.net core, items, коллекция</p>
2 <p>В объекте HttpContext в ASP.NET Core определена коллекция<strong>Items</strong>. Она представляет собой словарь типа IDictionary&lt;object, object&gt;. Коллекция предназначена для данных, непосредственно связанных с текущим запросом. При этом после завершения запроса происходит удаление всех данных из<strong>HttpContext.Items</strong>. В этой коллекции у каждого объекта есть ключ и значение. И посредством ключей обеспечивается управление объектами коллекции.</p>
2 <p>В объекте HttpContext в ASP.NET Core определена коллекция<strong>Items</strong>. Она представляет собой словарь типа IDictionary&lt;object, object&gt;. Коллекция предназначена для данных, непосредственно связанных с текущим запросом. При этом после завершения запроса происходит удаление всех данных из<strong>HttpContext.Items</strong>. В этой коллекции у каждого объекта есть ключ и значение. И посредством ключей обеспечивается управление объектами коллекции.</p>
3 <p>Когда же мы можем использовать эту коллекцию? К примеру, когда обработка запроса вовлекает много компонентов middleware, а мы желаем, дабы для этих компонентов были доступны общие данные.</p>
3 <p>Когда же мы можем использовать эту коллекцию? К примеру, когда обработка запроса вовлекает много компонентов middleware, а мы желаем, дабы для этих компонентов были доступны общие данные.</p>
4 <p>Определим метод Configure в классе Startup:</p>
4 <p>Определим метод Configure в классе Startup:</p>
5 <p>Обратите внимание, что тут в одном middleware определяется ключ "text", имеющий значение "Text from HttpContext.Items":</p>
5 <p>Обратите внимание, что тут в одном middleware определяется ключ "text", имеющий значение "Text from HttpContext.Items":</p>
6 <p>В другом middleware данный объект применяется для установки отправляемого ответа, так как HttpContext.Items предоставляет следующие методы для управления элементами: • void Add(object key, object value): обеспечивает добавление объекта value с ключом key; • void Clear(): обеспечивает удаление всех объектов; • bool ContainsKey(object key): возвращает true, когда словарь содержит объект с ключом key; • bool Remove(object key): обеспечивает удаление объекта с ключом key, а при удачном удалении возвращает true; • bool TryGetValue(object key, out object value): возвращает true, когда значение объекта с key-ключом успешно получено в объект value.</p>
6 <p>В другом middleware данный объект применяется для установки отправляемого ответа, так как HttpContext.Items предоставляет следующие методы для управления элементами: • void Add(object key, object value): обеспечивает добавление объекта value с ключом key; • void Clear(): обеспечивает удаление всех объектов; • bool ContainsKey(object key): возвращает true, когда словарь содержит объект с ключом key; • bool Remove(object key): обеспечивает удаление объекта с ключом key, а при удачном удалении возвращает true; • bool TryGetValue(object key, out object value): возвращает true, когда значение объекта с key-ключом успешно получено в объект value.</p>
7 <p>Напоследок рассмотрим пример использования нескольких методов:</p>
7 <p>Напоследок рассмотрим пример использования нескольких методов:</p>
8  
8