読者の皆様へ:ノイズを減らすための一連の機能を開発しました。関心のあるトピックについて電子メールとWeb通知を受け取ることができます。新機能の詳細をご覧ください。
Microsoftは、既存のEF開発者が待ち望んでいた多くの機能を実装して、Entity Framework Core 2.1をリリースした。EF Core 2.1はSQL GROUP BYのサポートを追加して、遅延ロード、データのシードなどをサポートした。
EF Core 2.1 に対する最初の大きな追加は、GroupBy LINQオペレーターがGROUP BY句を使ったSQLに変換されることである。このサポートが欠けていることは、EF Core 2.0の大きな欠落だと考えられている。 同様に遅延読み込みのサポートがEF Core 2.1で提供された。遅延読み込みの追加サポートのために、全てのパラメータを受け取るコンストラクタを作成できるようになった。一度定義されると、エンティティのインスタンスが作成されたときに、EF Coreがこのコンストラクタを呼び出す。
EF Coreは、初期データをプログラムで設定する機能をサポートするようになった。EF6から「シードデータは、モデル構成の一部として、エンティティタイプに関連付けられている」。しかし、EF Core 2.0から開かれているアイテムのいくつかは、2.1でも残っている。例えば、Table Per Typeはまだ、GitHubプロジェクトページでissueがオープンのままである。
EFのパッケージングがこのリリースで簡素化され、コマンドラインツールは.NET Core SDKの一部になった。これらはdotnet efで参照できるようになり、以前のプロジェクトでの参照(DotNetCliToolReference)は必要なくなった。しかし、EF Core 2.0/2.1はコマンドのみがサポートされるため、EF Core 1.0/1.1のサポートが必要な場合は、注意が必要だ。
EF Core 2.1は、.NET Core 2.1 SDKのインストールにより利用可能になる。EF Core 2.1は.NET Standard 2.0に準拠しているため、.NET Core 2.0と.NET Framework 4.6.1以降の両方で実行できる。
以前のビルドからアップグレードする場合は、データベースプロバイダーをサポートするパッケージをアップグレードする必要があることに注意が必要だ。EF Core 2.0ように設計されたデータベースプロバイダを使用すると、EF Core 2.1では問題が発生する可能性があるが、それらがすぐに発生するとは限らないため、問題が発生することを防ぐために、アップグレードしておいた方がよい。Microsoftは、確実に適切なバージョンが読み込まれるように、dotnet add packageを使って、直接アップデートすることを推奨している。
Rate this Article
- Editor Review
- Chief Editor Action