이 섹션에서는 Entity Framework Core를 사용하여 데이터베이스에 Plant 테이블을 생성하는 과정을 다룹니다.
코드 퍼스트 접근 방식을 사용하여 데이터베이스 변경사항을 코드에서 직접 적용하는 방법(CodeBase)에 대해 설명합니다.
- Entity Framework Core 설정:
- NuGet 패키지를 통해 Entity Framework Core와 SQL Server를 위한 필요한 라이브러리를 설치합니다.
ApplicationDbContext
클래스를 생성하고, 이 클래스에서DbSet<Plant>
를 정의하여 Plant 엔티티를 관리합니다. 이DbSet
은 SQL Server 내의 테이블과 매핑됩니다.
- NuGet 패키지를 통해 Entity Framework Core와 SQL Server를 위한 필요한 라이브러리를 설치합니다.
- 엔티티 모델 정의:
- Plant 엔티티 모델에는 ID, 이름, 세부 정보, 요금, 면적, 최대 수용 인원, 이미지 URL, 편의 시설 등의 속성이 포함됩니다. ID 속성은 기본 키로 설정되며, 자동 증가 옵션을 사용하여 새 레코드가 생성될 때마다 자동으로 1씩 증가합니다.
- 마이그레이션 생성 및 적용:
- Package Manager Console을 사용하여
Add-Migration
명령어로 마이그레이션을 생성합니다. 생성된 마이그레이션에는 테이블 생성 및 속성 정의에 대한 코드가 포함됩니다.Update-Database
명령어를 실행하여 마이그레이션을 적용하고, SQL Server에 Plant 테이블을 생성합니다.
- Package Manager Console을 사용하여
- 연결 문자열 구성:
appsettings.json
파일에 연결 문자열을 정의하여 SQL Server에 연결합니다. 연결 문자열에는 서버 이름, 데이터베이스 이름, 신뢰할 수 있는 연결 옵션 등이 포함됩니다.
- 마이그레이션 히스토리 관리:
- Entity Framework Core는
__EFMigrationsHistory
테이블을 사용하여 적용된 마이그레이션을 추적합니다. 이를 통해 어떤 마이그레이션이 이미 적용되었는지 확인하고, 새로운 마이그레이션만 적용할 수 있습니다.
- Entity Framework Core는
- 실습 예시:
- SQL Server Management Studio(SSMS)를 사용하여 생성된 Plant 테이블을 확인하고, 테이블의 구조와 데이터를 검토합니다.
메뉴:: 도구 / NuGet 패키지관리자 / 패키지관리자 콘솔
PM> add-migration AddPlantTable
PM> update-database
Entity Framework Core를 사용하여 코드 퍼스트 접근 방식으로 데이터베이스 테이블을 생성하고 관리하는 과정은 .NET Core Web API 애플리케이션 개발에서 중요한 부분입니다. 이 접근 방식을 통해 개발자는 데이터베이스 스키마를 코드를 통해 직접 관리할 수 있으며, 애플리케이션의 데이터 모델과 데이터베이스 간의 동기화를 유지할 수 있습니다.
프로젝트 리소스
https://github.com/kimdaewoong2022/MorePlants_WebAPI/tree/66b8ca6e07427d37d8e0877014a9718d16d24e80