본문 바로가기

C# ASP.NET

[ASP.NET CORE] .NET CORE의 패턴 - 의존성 주입 패턴

의존성 주입 패턴의 장점

  1. 프로젝트를 분리할 수 있다.
  2. 모듈화를 통한 효율적 관리를 할 수 있다.

전체적인 흐름

Serivces는 Data를 참조, Web은 Service를 참조한다.

- 결론 : Data => Services => Web

Interface에서  Service를 사용하기 위해서는 Service class 인스턴스를 받아와야한다.

Interface를 상속 받은 후에 명시적으로 Interface를 구현해주어야하고, 이때, 구현된  Method는 Interface에 묶여있는 Method라서 Public,Protect,Private 사용 불가

Linq  : .Any() 함수를 통해 리스트 데이터 유무 체크를 할 수 있다.

Views 폴더의 _ViewImports.cshtml 파일에서 전체적인 View들에 사용되는 Using 참조문을 관리한다.

VS2017 기준 : 의존성 주입을 위해 Startup.class의 ConfigureServices 메소드에 AddScope를 통해 추가해준다.

VS2022 기준(aspnetcore mvc 6 minimal api) : 의존성 주입을 위해 Program.cs에서 Builder.Serivces.AddScoped를 통해 추가해준다.


정리

 의존성 주입도 클래스 인스턴스를 직접 받지 않고, 생성자의 파라미터를 통해 주입받아 사용된다.