Dependency Injection

Embracing Change: My Journey from Autofac to .NET Core’s Built-In DI

Coding Mom
3 min readNov 26, 2023

--

As a senior developer working with .NET, I’ve navigated through various architectural paradigms. One significant turning point was moving from a monolithic .NET Framework web application to a more modern .NET Core approach, primarily due to the differences in handling Dependency Injection (DI). I am sharing my experience here in this blog and giving step-by-step implementation and the end testing your understanding of DI in .NET core. So read until the end and take a quiz to test yourselves.

The Monolithic Challenge: Our legacy application was a tightly-coupled monolith. Changing one component often led to a cascade of modifications. Testing was cumbersome, and deployment, a nightmare.

In our .NET Framework app, a change in the data access layer required alterations across multiple service layers, due to tight coupling. For instance, modifying the UserRepository impacted the UserService, which in turn affected the UserController.

Discovering Autofac: We first adopted Autofac to manage our dependencies better. Autofac’s flexibility was a revelation, enabling more manageable, testable, and modular code. However, it was an external dependency that we had to manage.

Implementing Autofac allowed us to define clear interfaces and their implementations. For…

--

--