제공자 버전 업그레이드
이 페이지의 내용
개요
이 섹션에서는 제공자 를 새 버전으로 업그레이드 할 때 애플리케이션 에 적용해야 하는 필수 변경 사항을 확인할 수 있습니다.
업그레이드하기 전에 다음 작업을 수행하세요:
새 버전이 애플리케이션 이 연결되는 MongoDB Server 버전 및 애플리케이션 이 실행되는 .NET 버전과 호환되는지 확인하세요. 이 정보는 호환성 섹션을 참조하세요.
애플리케이션 에서 사용 중인 제공자 의 현재 버전과 업그레이드 예정 버전 간의 호환성이 손상되는 변경은 호환성이 손상되는 변경 섹션에서 확인하세요.
호환성이 손상되는 변경
호환성이 손상되는 변경 은 제공자 의 특정 버전에서 시작하는 규칙 또는 동작의 수정입니다. 이러한 유형의 변경은 제공자 를 업그레이드하기 전에 해결하지 않으면 애플리케이션 이 제대로 작동하지 않을 수 있습니다.
이 섹션의 호환성이 손상되는 변경은 이를 도입한 제공자 버전별로 분류됩니다. 제공자 버전을 업그레이드할 때 현재 버전과 업그레이드 버전 간의 호환성이 손상되는 변경을 모두 주소 합니다. 예를 예시 제공자 를 v8.0 에서 v8.5 로 업그레이드하는 경우 v8.0 이후 버전의 모든 호환성이 손상되는 변경을 주소 합니다. v8.5 에 나열된 모든 항목을 포함합니다.
버전 8.2.0 호환성이 손상되는 변경
8.2.0 EF Core Provider 버전 에는 호환성이 손상되는 변경이 직접 도입되지 않습니다. 그러나 기본 .NET/ C# 드라이버 에는 v 출시하다 에 잠재적으로3.0 호환성이 손상되는 변경이 많이 도입되어 애플리케이션 에 영향을 미칠 수 있습니다.3.0 .NET/ C# 드라이버 v 의 호환성이 손상되는 3변경에 학습0 보려면 버전 로 업그레이드를 참조하세요. .NET/ C# 드라이버 설명서의 가이드 를 참조하세요.
버전 8.1.0 호환성이 손상되는 변경
모든 변경 사항을 MongoDB 트랜잭션으로 실행 하도록 EF Core Provider를 업데이트했습니다. 애플리케이션 에서 v5.0 이전의 MongoDB Server 를 사용하는 경우, 또는 복제본 세트 에서 실행 되지 않는 경우 애플리케이션 을 다음과 같이 변경해야 합니다.
애플리케이션 이 v5.0 이전의 MongoDB Server 버전으로 구성된 경우, MongoDB Server v5.0 이상으로 업그레이드 해야 합니다.
애플리케이션 이 독립형 독립형 서버 단일 인스턴스 복제본 세트 로 재구성해야 서버 . 독립형 서버 를 재구성하는 방법에 학습 보려면 MongoDB Server 매뉴얼 의 독립형 자체 관리 mongod 를 복제본 세트로 변환 을 참조하세요.
애플리케이션 이 컨테이너 환경에서 실행되는 경우 단일 인스턴스 복제본 세트 컨테이너 가 있는 경우 해당 컨테이너로 전환합니다.
트랜잭션 중 스냅샷 문제를 방지하려면 컬렉션 이나 데이터베이스 암시적으로 생성하는 대신 애플리케이션 시작 중에
EnsureCreated()
또는EnsureCreatedAsync()
메서드를 호출합니다.참고
애플리케이션 이 공유 클러스터 에서 실행 경우
EnsureCreated()
또는EnsureCreatedAsync()
메서드를 호출하면 오류가 발생합니다. 무료 및 공유 클러스터에서 실행 되는 애플리케이션은 이러한 메서드를 호출해서는 안 됩니다.낙관적 동시성 을 보장하지 않으려는 경우 애플리케이션 을
Database.AutoTransactionBehavior = AutoTrasactionBehavior.Never
설정DbContext
하는 동안 하위 클래스에 를 설정하여 자동 트랜잭션을 비활성화할 수 있습니다.기본값 GUID 저장 형식을
CSharpLegacy
바이너리 형식에서Standard
형식으로 변경했습니다. 데이터베이스 에Standard
형식이 아닌 기존 GUID가 포함된 경우Standard
형식으로 변환하는 것이 좋습니다.CamelCaseElementNameConvention
은 클래스 이름 대신 속성 이름을 기준으로 소유한 엔터티의 대소문자를 변환합니다. 애플리케이션 에서CamelCaseElementNameConvention
을 사용하는 경우 데이터의 대소문자가 변경될 수 있습니다.
이 버전의 호환성이 손상되는 변경에 대한 자세한 내용은 호환성이 손상되는 변경 을 참조하세요. 을 제공자 Github 리포지토리 .