ASP.NET Core 8.0 MVC에서 EF Core 사용하기

  • 6 minutes to read

개요

이번 문서에서는 ASP.NET Core 8.0 MVC 프레임워크를 사용하여 StateTribe 엔터티에 대한 CRUD(Create, Read, Update, Delete) 작업을 수행하는 웹 애플리케이션을 만드는 과정을 단계별로 설명합니다. 이 과정에서 MVC Scaffolding 기능과 Entity Framework Core를 활용하여 데이터 모델에 기반한 컨트롤러와 뷰를 자동 생성하고 테스트하는 방법을 다룹니다.

MVC Scaffolding 이해

MVC Scaffolding은 ASP.NET Core MVC에서 제공하는 도구로, 데이터 모델에 기반한 컨트롤러와 뷰를 빠르게 생성할 수 있도록 도와줍니다. 이를 통해 개발자는 반복적인 코드 작성을 줄이고, CRUD 작업에 필요한 기본적인 UI와 로직을 자동으로 설정할 수 있습니다.

프로젝트 설정

  1. ASP.NET Core Web Application 생성

    • Visual Studio에서 "새 프로젝트 만들기"를 선택합니다.
    • "ASP.NET Core Web Application"을 선택하고 "다음"을 클릭합니다.
    • 프로젝트 이름을 "HawasoTribeWeb"로 설정하고 "만들기"를 클릭합니다.
    • "ASP.NET Core 8.0"을 선택하고, "Web Application(Model-View-Controller)" 템플릿을 선택한 후 "만들기"를 클릭합니다.
  2. Entity Framework Core 패키지 설치

    • 이전에 만든 'HawasoTribe' 프로젝트와 동일한 EF Core 패키지를 설치합니다.

모델 및 DbContext 클래스 복사 또는 재사용

  • 이전에 만든 HawasoTribe 프로젝트의 StateTribe 모델 클래스 및 TribeDbContext 클래스를 HawasoTribeWeb 프로젝트로 복사합니다.
  • 프로젝트 구조에 맞게 네임스페이스를 조정합니다.

데이터베이스 마이그레이션 및 초기화

  1. 마이그레이션 추가

    • 패키지 관리자 콘솔에서 Add-Migration InitialCreate 명령을 사용하여 마이그레이션을 추가합니다.
  2. 데이터베이스 업데이트

    • Update-Database 명령을 실행하여 데이터베이스를 생성하거나 업데이트합니다.

MVC Scaffolding을 사용한 CRUD 페이지 생성

  1. Scaffold CRUD 작업

    • 솔루션 탐색기에서 "Controllers" 폴더를 마우스 오른쪽 버튼으로 클릭하고 "Add" > "New Scaffolded Item"을 선택합니다.
    • "MVC Controller with views, using Entity Framework" 옵션을 선택합니다.
    • "Model class"로 State 또는 Tribe를 선택하고, "Data context class"로 TribeDbContext를 선택합니다.
    • "Add" 버튼을 클릭하여 컨트롤러와 뷰를 생성합니다.
  2. 생성된 파일 검토

    • 컨트롤러와 뷰가 생성된 것을 확인하고, 필요에 따라 코드를 수정합니다.

테스트 및 검증

  1. 애플리케이션 실행

    • Visual Studio에서 "디버그 > 디버깅 시작"을 선택하거나 F5 키를 눌러 애플리케이션을 실행합니다. 브라우저가 열리면 생성된 StateTribe에 대한 CRUD 페이지를 확인할 수 있습니다.
  2. 데이터 생성 (Create) 테스트

    • StateTribe에 대한 생성 페이지로 이동하여 새로운 항목을 추가해봅니다. 입력 폼을 채우고 "Save" 또는 "Create" 버튼을 클릭하여 데이터를 데이터베이스에 저장합니다.
  3. 데이터 조회 (Read) 테스트

    • Index 페이지에서 새로 추가한 항목이 표시되는지 확인합니다. 이 페이지는 데이터베이스에 저장된 모든 StateTribe 항목을 나열합니다.
  4. 데이터 업데이트 (Update) 테스트

    • 각 항목 옆에 있는 "Edit" 링크를 클릭하여 업데이트 페이지로 이동합니다. 폼을 수정한 후 저장하여 변경 사항을 확인합니다.
  5. 데이터 삭제 (Delete) 테스트

    • 삭제하고자 하는 항목 옆의 "Delete" 링크를 클릭합니다. 삭제 확인 페이지에서 "Delete" 버튼을 클릭하여 해당 항목을 데이터베이스에서 제거합니다.
  6. 오류 및 예외 처리

    • 데이터 입력, 수정, 삭제 과정에서 오류가 발생하는 경우 적절한 예외 처리가 이루어지는지 테스트합니다.

마무리

ASP.NET Core MVC와 Entity Framework Core를 사용하여 StateTribe에 대한 CRUD 작업을 지원하는 웹 애플리케이션을 성공적으로 구축하고 테스트하는 과정을 완료했습니다. 이 과정에서 MVC Scaffolding을 활용하여 효율적으로 컨트롤러와 뷰를 생성했으며, Entity Framework Core를 사용하여 데이터베이스 작업을 수행했습니다.

이 문서는 ASP.NET Core MVC와 EF Core를 활용한 웹 애플리케이션 개발의 기본적인 절차를 안내하며, 이를 바탕으로 더 복잡한 기능과 사용자 정의 요구 사항을 구현할 수 있는 토대를 마련했습니다. 개발 과정에서 발생할 수 있는 다양한 시나리오에 대한 추가 학습과 실습을 통해, 여러분의 ASP.NET Core MVC 기반 웹 개발 능력을 한층 더 향상시킬 수 있습니다.

VisualAcademy Docs의 모든 콘텐츠, 이미지, 동영상의 저작권은 박용준에게 있습니다. 저작권법에 의해 보호를 받는 저작물이므로 무단 전재와 복제를 금합니다. 사이트의 콘텐츠를 복제하여 블로그, 웹사이트 등에 게시할 수 없습니다. 단, 링크와 SNS 공유, Youtube 동영상 공유는 허용합니다. www.VisualAcademy.com
박용준 강사의 모든 동영상 강의는 데브렉에서 독점으로 제공됩니다. www.devlec.com