Overview
このセクションでは、プロバイダーを新しいバージョンにアップグレードするときにアプリケーションに加える必要がある重要な変更を特定できます。
アップグレードする前に、次のアクションを実行してください。
Ensure the new version is compatible with the MongoDB Server version your application connects to and the .NET version your application runs on. See the Compatibility page for this information.
アプリケーションが使用しているプロバイダーの現在のバージョンとアップグレードが予定されているバージョンとの間の重大な変更については、「 重大な変更 」セクションを参照してください。
重大な変更
重大な変更とは、特定のバージョンのプロバイダー以降の規則または動作の変更です。 このタイプの変更では、プロバイダーをアップグレードする前に処理されない場合、アプリケーションが正常に動作しなくなる可能性があります。
このセクションの重大な変更は、それを導入したプロバイダーのバージョンによって分類されます。 プロバイダーのバージョンをアップグレードするときは、現在のバージョンとアップグレードのバージョン間のすべての重大な変更に対処してください。 例えば、プロバイダーを v 8.0から v 8.5 800} にアップグレードする場合、 v 8.0以降のバージョンからの重大な変更にはすべて対処します。 v 8.5にリストされているすべての を含みます。
バージョン8.2.0 重大な変更
Version 8.2.0 of the EF Core Provider does not directly introduce any breaking changes. However, the underlying .NET/C# Driver introduces many potentially breaking changes in the v3.0 release, which might affect your application. To learn more about the breaking changes in v3.0 of the .NET/C# Driver, see the Upgrade to Version 3.0 guide in the .NET/C# Driver documentation.
バージョン8.1.0 重大な変更
すべての変更を MongoDB トランザクションとして実行するように FS コア プロバイダーを更新しました。 アプリケーションが v 5.0より前の MongoDB Server を使用している場合、 または がレプリカセット内で実行されない場合は、アプリケーションに次の変更を加える必要があります。
アプリケーションが v 5.0より前のバージョンの MongoDB Server 用に構成されている場合、 MongoDB Server v 5.0以降にアップグレードする必要があります。
If your application runs on a standalone server, you must reconfigure your standalone server to a single-instance replica set. To learn more about how to reconfigure your standalone server, see Convert a Standalone Self-Managed mongod to a Replica Set in the MongoDB Server manual.
アプリケーションがコンテナ環境で実行されている場合は、単一インスタンスのレプリカセット コンテナが使用可能な場合、それに切り替えます。
EnsureCreated()EnsureCreatedAsync()トランザクション中のスナップショットの問題を回避するには、コレクションまたはデータベースを暗黙的に作成するのではなく、アプリケーションの起動時に メソッドまたは メソッドを呼び出します。注意
アプリケーションが共有クラスターで実行中されている場合、 または
EnsureCreated()EnsureCreatedAsync()メソッドを呼び出すとエラーがスローされます。無料クラスターと 共有クラスターで実行中中のアプリケーションは、これらのメソッドを呼び出しないでください。トランザクションとの楽観的な同時実行性を確保したくない場合は、アプリケーション設定中に
Database.AutoTransactionBehavior = AutoTrasactionBehavior.NeverDbContextサブクラスに を設定することで自動トランザクションを無効にできます。デフォルトの GUID ストレージ形式を
CSharpLegacyバイナリ形式からStandard形式に変更しました。Standard形式ではない既存の GUID がデータベースに含まれている場合は、Standard形式に変換することをお勧めします。CamelCaseElementNameConventionは、クラス名ではなくプロパティ名に基づいて、所有されるエンティティの大文字と小文字を変換します。 アプリケーションでCamelCaseElementNameConventionが使用される場合、データの大文字と小文字が変更される可能性があります。
このバージョンの重大な変更の詳細については、Github のプロバイダーリポジトリの「 重大な変更 」セクションを参照してください。