Встречается на 12% собеседований по C#

Что такое Scoped

Scoped — это время жизни сервиса в DI-контейнере, при котором сервис создается один раз на область (scope), например, на HTTP-запрос. В рамках одного scope сервис будет синглтоном, но между разными scope — разными экземплярами.

Пример:

csharp
services.AddScoped<IMyService, MyService>();

Применяется для сервисов, которые должны сохранять состояние в рамках одного запроса (например, DbContext в EF Core).

Нюансы:

  • Scoped сервисы нельзя использовать в Singleton, так как это приведет к утечке памяти.
  • В консольных приложениях нужно явно создавать scope через IServiceScopeFactory.
  • В ASP.NET Core scope автоматически создается для каждого HTTP-запроса.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы