더북(TheBook)

첫째 줄의 @using 지시문은 C#의 using 구문과 같은 역할로 현재 뷰 페이지에서 Models 네임스페이스를 사용하겠다고 지정한 것이다. @model 지시문에 의해 컨트롤러에서 뷰 페이지로 전송된 데이터를 List<Data> 또는 IEnumerable<Data> 형태로 받는다. 그런 후 Razor 문법에 의해 @foreach 문으로 넘겨온 전체 값을 Model 개체에 담고, 이를 반복하면서 data 개체로 받아서 data 개체의 Id, Name, Title 속성을 출력해서 웹 페이지에 반복해서 출력하는 코드를 구현했다. Razor 표현식으로 불리는 @foreach 구문을 사용하는 방식은 뒤에서 한 번 더 자세히 설명하겠다.

@inject 지시문은 DataFinder 클래스를 직접 컨트롤러에서 호출해서 뷰 페이지로 전달하는 게 아니라 뷰 페이지에 직접 주입(Inject)해서 사용할 수 있게 하는 의존성 주입 방식이다. 단, 이 코드를 사용하려면 DataFinder 클래스를 Starup.cs 파일에서 서비스 등록을 해주어야 한다. 이 절차는 잠시 후에 살펴보도록 하자.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.