상세 컨텐츠

본문 제목

nInject 사용하는 간단한 방법

똑똑한 개발/C#

by 성댕쓰 2021. 5. 29. 15:10

본문

사용하는 이유는?

  • 의존성을 주입할 수 있음.
  • 주입 할 수 있기 때문에 의존성을 제거할 수 있음.

사용하는 방법은?

  • manual dependency injection 을 Ninject로 바꿔보자.

코드 설명

  • formHandler 가 mailSender 를 가지고 있음.
  • mailSender 를 유연하게 쓰고 싶음.
class Program
{
    static void Main(string[] args)
    {
        IMailSender mailSender = new MockMailSender();
        FormHandler formHandler = new FromHandler(mailSender);
        fromHandler.Handle("test@test.com");
    }
}

위의 manual dependecy injection 을 Ninject 로 바꾸면

using Ninject;

class Program
{
    static void Main(string[] args)
    {
        var kernel = new StandardKernel();
        Bind<IMailSender>.To<MockMailSender>();
        FormHandler formHandler = new FromHandler(kernel.Get<IMailSender>());
        fromHandler.Handle("test@test.com");
    }
}

'똑똑한 개발 > C#' 카테고리의 다른 글

[WPF] Dependency Property Metadata  (0) 2022.04.19
[WPF] Databinding  (0) 2022.04.18
[WPF] Pack uri  (0) 2022.04.15
c# (WPF) Data Binding 에 대해서  (0) 2021.05.31
Dependency Injection 에 대해서  (0) 2021.05.24

관련글 더보기

댓글 영역