30.4.4 따라하기 3: 생성자에서 직접 클래스의 인스턴스 생성
1. DependencyInjectionDemoController.cs 컨트롤러 클래스를 열고 다음과 같이 코드를 변경한다.
▼ Controllers/DependencyInjectionDemoController.cs 코드 변경
using DotNetNote.Services; using Microsoft.AspNetCore.Mvc; namespace DotNetNote.Controllers { public class DependencyInjectionDemoController : Controller { private CopyrightService _svc; public DependencyInjectionDemoController() { _svc = new CopyrightService(); } public IActionResult Index() { ViewBag.Copyright = _svc.GetCopyrightString(); return View(); } public IActionResult About() { ViewBag.Copyright = _svc.GetCopyrightString(); return View(); } } }
이번에는 각각의 액션 메서드에서 서비스 클래스의 인스턴스를 생성하고 메서드를 호출하는 대신 컨트롤러 클래스의 생성자에서 한 번 인스턴스를 생성한 후 _svc 변수로 Index 액션 메서드와 About 액션 메서드에서 함께 사용해보자.