Skip to content

Як отримати HttpContext.Current в ASP.NET Core?

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)
Завантаження...

[ Полезный рекламный блок ]

Попробуйте свои силы в игре, где ваши навыки программирования на C# станут решающим фактором. Переходите по ссылке 🔰.


В ASP.NET Core клас HttpContext, як і раніше, доступний, але спосіб доступу до нього змінився.

Замість використання статичної властивості HttpContext.Current, як у попередніх версіях ASP.NET, ви можете використовувати клас HttpContextAccessor, який надає доступ до поточного HttpContext у зручній для впровадження залежностей (DI) формі.

Ось кроки для отримання HttpContext в ASP.NET Core:

Додайте HttpContextAccessor у контейнер DI у файлі Program.cs:

2. У своєму контролері або службі впровадьте IHttpContextAccessor як залежність:

3. Потім ви можете отримати доступ до поточного HttpContext через властивість HttpContext властивості IHttpContextAccessor:

Так само, ви можете отримати доступ до поточного HTTP контексту через властивість HttpContext на будь-якому контролері. Наприклад:

Будьте обережні під час використання HttpContext безпосередньо, оскільки це може вплинути на тестованість, масштабованість і супроводжуваність вашого коду. Намагайтеся, щоб ваша бізнес-логіка не залежала безпосередньо від HttpContext, і віддавайте перевагу використанню абстракцій більш високого рівня, таких як сервіси, сховища та DTO.

Я сподіваюся, що вам сподобалося читати цю статтю, і вона виявилася легкою для розуміння. Будь ласка, дайте мені знати, якщо у вас є якісь коментарі або виправлення.

Так само вам може бути цікава попередня стаття – Як створити ролі в ASP.NET Core і призначити їх користувачам?.

Ви хочете навчитися писати код мовою програмування C#?

Створювати різні інформаційні системи, що складаються з сайтів, мобільних клієнтів, десктопних додатків, телеграм-ботів тощо.

Переходьте до нас на сторінку Dijix і ознайомтеся з умовами навчання, ми спеціалізуємося тільки на індивідуальних заняттях, як для початківців, так і для просунутих програмістів. Ви можете взяти як одне заняття для опрацювання питання, що вас цікавить, так і кілька, для більш щільної роботи. Завдяки особистому кабінету, кожен студент підвищить якість свого навчання, у вашому розпорядженні:

  • Доступ до пройденого матеріалу
  • Тематичні статті
  • Бібліотека книг
  • Онлайн тестування
  • Спілкування в закритих групах

https://dijix.com.ua

Живи у своєму світі, програмуй у нашому.

Published inВідповіді на Запитання C# Asp.Net Core
Subscribe
Notify of
guest
0 комментариев
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x