Mid SOLID

How do you implement DI in ASP.NET Core MVC?

ASP.NET Core MVC has built-in support for Dependency Injection.

  • Register services in Startup.cs within ConfigureServices method using

IServiceCollection:

public void ConfigureServices(IServiceCollection services)

services.AddControllersWithViews();

services.AddScoped<IProductService, ProductService>(); //

Example

  • Inject dependencies via constructor injection in controllers or services:

public class HomeController : Controller

private readonly IProductService _productService;

public HomeController(IProductService productService)

_productService = productService;

public IActionResult Index()

var products = _productService.GetAll();

return View(products);

The framework resolves and injects dependencies automatically.

More from Design Patterns in C#

All questions for this course