자습서: ASP.NET MVC 앱을 사용하여 EF Database First에 대한 보기 사용자 지정

MVC, Entity Framework 및 ASP.NET 스캐폴딩을 사용하여 기존 데이터베이스에 대한 인터페이스를 제공하는 웹 애플리케이션을 만들 수 있습니다. 이 자습서 시리즈에서는 사용자가 데이터베이스 테이블에 있는 데이터를 표시, 편집, 생성 및 삭제할 수 있는 코드를 자동으로 생성하는 방법을 보여 줍니다. 생성된 코드는 데이터베이스 테이블의 열에 해당합니다.

이 자습서에서는 자동으로 생성된 보기를 변경하여 프레젠테이션을 개선하는 데 중점을 둡니다.

이 자습서에서는 다음을 수행합니다.

  • 학생 세부 정보 페이지에 과정 추가
  • 코스가 페이지에 추가되는지 확인합니다.

사전 요구 사항

학생 세부 사항에 과정 추가

생성된 코드는 애플리케이션에 좋은 시작점을 제공하지만 애플리케이션에 필요한 모든 기능을 반드시 제공하지는 않습니다. 애플리케이션의 특정 요구 사항을 충족하도록 코드를 사용자 지정할 수 있습니다. 현재 애플리케이션은 선택한 학생에 대해 등록된 과정을 표시하지 않습니다. 이 섹션에서는 각 학생에 대해 등록된 과정을 학생의 세부 정보 보기에 추가합니다.

Views>Students>Details.cshtml을 엽니다. 마지막 </dl> 태그 아래에 있지만 닫는 </div> 태그 앞에 다음 코드를 추가합니다.

<table class="table">
    <tr>
        <th>
            Course Title
        </th>
        <th>
            Grade
        </th>
        <th>
            Credits
        </th>
    </tr>

    @foreach (var item in Model.Enrollments)
    {
        <tr>
            <td>
                @Html.DisplayFor(modelItem => item.Course.Title)
            </td>
            <td>
                @Html.DisplayFor(modelItem => item.Grade)
            </td>
            <td>
                @Html.DisplayFor(modelItem => item.Course.Credits)
            </td>
        </tr>
    }
</table>

이 코드는 선택한 학생에 대한 등록 테이블의 각 레코드에 대한 행을 표시하는 테이블을 만듭니다. Display 메서드는 식을 나타내는 개체(modelItem)에 대해 HTML을 렌더링합니다. Display 메서드를 사용하여(단순히 코드에 속성 값을 포함하는 것이 아니라) 해당 형식 및 해당 형식의 템플릿에 따라 값의 형식이 올바르게 지정되었는지 확인합니다. 이 예제에서 각 식은 루프의 현재 레코드에서 단일 속성을 반환하고 값은 텍스트로 렌더링되는 기본 형식입니다.

과정 추가 확인

솔루션을 실행합니다. 학생 목록을 클릭하고 학생 중 하나에 대한 세부 정보를 선택합니다. 등록된 과정이 보기에 포함된 것을 볼 수 있습니다.

등록이 있는 학생

다음 단계

이 자습서에서는 다음을 수행합니다.

  • 학생 세부 정보 페이지에 과정 추가
  • 코스가 페이지에 추가되는지 확인했습니다.

다음 자습서로 이동하여 데이터 주석을 추가하여 유효성 검사 요구 사항 및 표시 서식을 지정하는 방법을 알아봅니다.