Rider

Rider 2018.1, Entity Framework 지원!

Rider 2018.1 EAP 의 새로운 빌드가 출시되었습니다. EAP(Early Access Program)은 정식 출시는 아니지만 직전의 버전으로 정식출시 전 다양한 추가 기능들을 미리 접해볼 수 있는 버전이죠.  이제 Rider는 마이그레이션 활성화, 추가, 불러오기 및 데이터베이스를 업데이트하는등의 기능이 추가되었습니다!

Entity Framework 초기화 및 마이그레이션 활성화

Entity Framework NuGet 패키지를 설치 한 후 프로젝트 컨텍스트 메뉴의  Tools | Entity Framework | Initial setup 에서 Entity Framework 를 초기화(initialize) 할 수 있습니다.

initial-setup

 

Entity Framework를 초기화하려는 것을 확인(Confirm)한 후에 Rider 는 App.config 또는 Web.config 파일: entityFramework 컨피거레이션 섹션이 등록 되고, 데이타베이스들이 연결되면 적합한 엔트리들을 추가합니다.

물론, 시작하려면 모델이 및 DbContext 도 필요하겠습니다. 데모로 아래 모델을 한번 살펴 보겠습니다.

1
2
3
4
5
6
7
8
9
10
public class ProductsContext : DbContext
{
    public DbSet<Product> Categories { get; set; }
}
public class Product
{
    public int Id { get; set; }
    public string Name { get; set; }
}

 

다음으로 프로젝트의 Tools | Entity Framework context 메뉴에서 마이그레이션 을 활성화 할 수 있습니다.  활성화 하게 되면 즉시 Enable-Migrations 커맨드를 실행하게 되죠. Entity Framework에는 마이그레이션을 저장해야하는 폴더, 자동 마이그레이션을 사용할지(사용하지 않을 것인지) 여부 , 프로젝트 및 연결 설정을 사용할 것인지 등 여러 가지 옵션이 있습니다.

enable-entity-framework-migrations

이 대화 상자에 표시되는 로그 수준에 대해 궁금한 경우 : 작업 실행 후 표시되는 로그의 자세한 정보를 제어합니다. 이렇게하면 현재 프로젝트에 빌드 오류 등이있을 때 문제를 해결하는 데 도움이됩니다.

 

Migrations 추가

Rider를 통해 또는 데이터베이스 마이그레이션이 활성화 된 기존 프로젝트를 열어 마이그레이션을 활성화 한 후에는 추가 마이그레이션을 생성 할 수 있습니다!  이제는 익숙한 프로젝트의  Tools  | Entity Framework 컨텍스트 메뉴에서 마이그레이션 추가(Add migration) 를 클릭합니다.

add-migration

마이그레이션을  활성화(Enable) 할 때 지정한 폴더에 마이그레이션이 생성됩니다.

 

데이터베이스 업데이트

Entity Framework 모델을 변경 한 후에는 새 모델을 반영하도록 데이터베이스를 업데이트 하고자 할 수 있습니다. 마이그레이션은 프로젝트의  Tools | Entity Framework | Update Database  컨텍스트 메뉴를 통해 업데이트 할 수 있습니다.

데이터베이스에 적용 할 대상 마이그레이션을 선택해야합니다.  이 필드는 자동 코드 완성과 함께 제공되므로 걱정할 필요가 없습니다. 다른 옵션도 마찬가지 입니다. 예를 들어 개발 또는 준비(staging) 데이터베이스에 다른 연결 이름을 사용하여  데이터베이스 마이그레이션을 실행해보세요.

update-database3

Rider 에는 DataGrip 기능이 포함되어 있어 테이블, 뷰, 저장된 프로 시저 및 데이터 ( 팁 : 자세한 내용 은 라이더 데이터베이스 지원 시리즈 확인) 를 손쉽게 작업 할 수 있습니다 . 이렇게하면 아래와 같이 데이터베이스를 업데이트 한 결과를 즉시 볼 수도있습니다!

update-database-result

데이터 소스의 Diagrams | Show Visualization 컨텍스트 메뉴 (Visual Studio keymap에서는 Ctrl+Alt+Shift+U )를 표시하면 테이블이 어떻게 관련되는지에 대한 시각화된 데이타를 경험할 수 있습니다.

ef-database-diagram-via-database-tools

이제 Entity Framework로 돌아갈 필요가 없습니다! 데이타베이스를 업데이트 할 때, 이제 데이타베이스를 대상으로 업데이트를 실행할 필요가 없죠. Script 옵션을 사용하여 소스 마이그레이션에서 타겟 마이그레이션으로 실행(execute) 업데이트하기 위해 업데이트 할 데이터베이스에 대해 실행될 스크립트를 살펴볼 수도 있습니다.

script-update-database

그런 다음이 스크립트 파일을 버전 제어에 저장하고 데이터베이스에 대해 수동으로 실행하는 등의 작업을 수행 할 수 있습니다.

 

마이그레이션 불러오기

개발주기의 어느 시점에서 타겟 데이터베이스에 적용된 Entity Framework 마이그레이션이 어떤 것인지 확인 해야할 수 있습니다. 이는, 프로젝트의 Tools | Entity Framework | Get migrations  컨텍스트 메뉴에서 딱 원하는 기능이 있습니다. Rider 가 바로 지정된 데이터베이스에 연결하고 적용된 마이그레이션을 쿼리합니다.

get-migrations

 

현재까지 제약 사항

Entity Framework 6.0, 6.1 및 6.2를 지원할 계획이지만 현재 Windows, Linux 및 macOS에서는 Entity Framework 6.2 만 지원됩니다. Entity Framework 통합은 대부분의 프로젝트에서 작동하지만 모든 프로젝트에서 예상대로 작동하지 않을 수 있습니다. 문제가 발생하면 JetBrains 의 이슈 트래커,  YouTrack 을 통해 알려주십시오 .

Rider 에 내장된 터미널에서 Entity Framework Core 를 사용하여 작업 할 수도 있습니다 .

최신 Rider 2018.1 EAP 빌드를 시도해보십시오!  우리는 귀하의 의견을 듣고 싶습니다!

The Drive to develop
JetBrains 팀

 

본 게시물은 영문 컨텐츠를 번역하여 작성되었습니다.

image description

Discover more