重大な変更

アプリケーション・プログラミング・インタフェースの変更

  • Oracle EF Core UseOracleSQLCompatibility拡張メソッド

    Oracle EF Coreバージョン23を使用するEF Core 6以降のバージョンでは、UseOracleSQLCompatibility拡張メソッドで文字列値ではなく列挙型を引数として取るようになりました。この拡張メソッドのデフォルト値は、Oracle EF Coreバージョンと同じになります。たとえば、Oracle EF Core 23を使用している場合、その値はOracleSQLCompatibility.DatabaseVersion23になります。

    このデフォルトは、アプリケーションがOracle EF Coreバージョンと同じデータベース・バージョン(Oracle Database 23aiとOracle 23aiクライアント)を使用していることを前提としています。同じバージョンでない場合、開発者は、接続先のデータベース・バージョンと一致するように列挙値を変更する必要があります。これにより、互換性エラーが少なくなり、Oracle EF Coreでは最新のOracle Database機能を使用できます。

サポート対象外API

サポート対象外APIは次のとおりです。

  • ModelBuilder.UseOracleIdentityColumn Extensionメソッド

    EF Core 5以降、ODP.NET EF CoreはUseOracleIdentityColumnをサポートしなくなります。開発者は、同じ機能を提供するModelBuilder.UseIdentityColumn拡張メソッドをかわりに呼び出す必要があります。EF Core 3.1以前のリリースでは、UseOracleIdentityColumnは引き続きサポートされます。

  • ModelBuilderおよびPropertyBuilder ForOracleUseSequenceHiLo拡張メソッド

    EF Core 5以降、ODP.NET EF CoreはForOracleUseSequenceHiLoをサポートしなくなります。開発者は、同じ機能を提供するModelBuilder.UseHiLo拡張メソッドをかわりに呼び出す必要があります。EF Core 3.1以前のリリースでは、ForOracleUseSequenceHiLoは引き続きサポートされます。

  • Oracle.EntityFrameworkCore.Migrations.Operations.OracleCreateUserOperationクラス

    Oracle EF Core 21c以降、OracleCreateUserOperationクラスはサポート対象外になりました。開発者は、サポート対象外のAPIを直接使用している場合は、CREATE USER SQL文でMigrationBuilder.Sqlメソッドをかわりに呼び出してユーザーを作成する必要があります。

  • Oracle.EntityFrameworkCore.Migrations.Operations.OracleDropUserOperationクラス

    Oracle EF Core 21c以降、OracleDropUserOperationクラスはサポート対象外になりました。開発者は、サポート対象外のAPIを直接使用している場合は、DROP USER SQL文でMigrationBuilder.Sqlメソッドをかわりに呼び出してユーザーを削除する必要があります。