コア3.0 EF プレビュー7および EF 6.3 のプレビュー7がリリースされている、に応じ公式牙ボーエン、ここでの更新は次のとおりです。
EFコア3.0プレビュー7つの新機能:
- クエリの改善:完全に達成するための新しいLINQの面で大きな進歩を遂げました。例えば、GROUPBYは、クエリのタイプが自動的に含まれ、作業今変換をラベル付けされています。また、EFコア、などUNION、CONAT、IntersecectとEXTとしてサポートLINQ演算子SQL翻訳の最初のセット。
- その他の主な新機能:プレビュー7また、新しいAPI、傍受のためのデータベース操作を含んでいます。非常に類似し6の存在下で、このEF傍受機能は、それは単に、データベース接続を開くトランザクションをコミット、またはクエリを実行し、簡単なロジックを記述することができ、EFCoreは自動的にそのロジックを呼び出します。彼らは一般的に傍受するインターセプターは、操作の前または後に起こることができます。それらが発生する前にそれらを傍受すると、それがバイパスされ、実行結果は、バックアップロジックを提供するために取ることができます。
たとえば、コマンドテキストを操作するために、IDbCommandInterceptorを作成します。
public class MyCommandInterceptor : DbCommandInterceptor
{
public override InterceptionResult? ReaderExecuting(
DbCommand command,
CommandEventData eventData,
InterceptionResult? result)
{
// Manipulate the command text, etc. here...
command.CommandText = command.CommandText...
return result;
}
}
とでDbContextを登録:
services.AddDbContext(b =>
b.UseSqlServer(connectionString)
.AddInterceptors(new MyCommandInterceptor()));
- プレビュー7ランタイムやツールを取得します:EFコア3.0は、NuGetパッケージの配布として設計されています。過去には、NuGetのユーザーインターフェイスにより、パッケージマネージャコンソールまたは過去ログでVisual Studioがプレビュー7上のランタイムを追加またはアップグレードするパッケージのコマンドを追加します。オプションのプレリリースバージョンのインストールを許可するなど、すべてのケースでは。3.0では、過去ログEF CLIツールは、.NETのコアSDKのリリースの一部として、もはやありませんので、移行またはScanffoldコマンドを実行する前に、あなたはグローバルなツールや地元のツールとして、それをインストールする必要があります。制限の過去ログCLIツールによる、ツールの取付プレビュープレビュー版を実行することによって、過去ログのEF 3.0グローバルプレビューツールをインストールするには、例えば、mountコマンドの少なくとも一部を指定する必要があります。
$ dotnet tool install --global dotnet-ef --version 3.0.0-*
EF 6.3のプレビュー7つの新機能:
このプレビューでは、完全なEF 6.3の.NETのコアパッケージは、プロジェクトのために必要な作業、およびプロジェクトのすべてのタイプでNuGet PackageReferenceの使用のほとんどで動作するように。
EF 6.3では、三つの主要な問題があります。
- .NETのコアプロジェクトに取り組んでNuGetパッケージマネージャコンソールの移行コマンド:この作品は、プレビュー8の一部となる、今完了しており、夜間のバージョンで使用することができます
- .NETのコアプロジェクトのための新しいプロジェクトやファイルを扱うことができるのVisual Studio EF6のデザインを更新しました:この作品はまだ開始されていない、Visual Studioの2019を更新する予定です。一方、関係者はプロジェクトの.NET Frameworkの対象とEDMX処理ファイルを示唆し、その後、.NETのコアEDMXプロジェクトの最終バージョンをコピーします。
- DOTNETのEFに類似の移行コマンド、クロスプラットフォームのコマンドラインでの経験、しかし、EF6に適用されます。この計画では。