TGViewer
C# | Вопросы собесов C# | Вопросы собесов @easy_c_sharp · 5.01K subscribers
Post #1702 1.11K
🤔 Для чего нужны методы service configuration?

В ASP.NET Core методы Service Configuration используются для настройки и регистрации зависимостей в контейнере внедрения зависимостей (Dependency Injection, DI). Это позволяет управлять зависимостями в приложении, делая код более гибким, тестируемым и удобным для расширения.

🚩Где происходит настройка сервисов?

Настройка сервисов выполняется в методе ConfigureServices(IServiceCollection services), который находится в классе Program.cs или Startup.cs (в зависимости от версии .NET).
public void ConfigureServices(IServiceCollection services)
{
services.AddControllers(); // Добавление контроллеров для API
services.AddDbContext<ApplicationDbContext>(); // Регистрация контекста базы данных
services.AddScoped<IMyService, MyService>(); // Внедрение зависимости
}


🚩Основные виды регистрации сервисов

🟠`AddSingleton<T>`
создаёт единственный экземпляр объекта на всё время работы приложения.
services.AddSingleton<ILogger, ConsoleLogger>();


🟠`AddScoped<T>`
создаёт один экземпляр объекта на каждый HTTP-запрос.
services.AddScoped<IUserService, UserService>();


🟠`AddTransient<T>`
создаёт новый экземпляр объекта при каждом запросе.
services.AddTransient<IEmailSender, EmailSender>();


🚩Пример использования в контроллере

public class HomeController : Controller
{
private readonly IMyService _myService;

public HomeController(IMyService myService)
{
_myService = myService;
}

public IActionResult Index()
{
var data = _myService.GetData();
return View(data);
}
}


Ставь 👍 и забирай 📚 Базу знаний
More from @easy_c_sharp
  1. Oct 17, 2026🤔 Что такое виртуальный метод? Виртуальный метод (virtual) — это метод, который можно пер…
  2. Oct 17, 2026🤔 Что такое медиатор? Это паттерн проектирования поведенческих шаблонов, который позволяе…
  3. Oct 16, 2026🤔 Как отменить Task? Используется CancellationToken: 1. Создаётся CancellationTokenSource…
  4. Oct 16, 2026🤔 Что такое .NET стандарт? .NET Standard — это спецификация API, которая определяет набор…
  5. Oct 15, 2026🤔 Что такое паттерн DDD? Это подход к разработке, фокусирующийся на модели домена и бизне…
  6. Oct 15, 2026🤔 Что такое Generic-и? Термин "Generic" (общий тип) относится к функциональности, позволя…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →