EF コア パッケージ マネージャー コンソール ツールEF Core Package Manager Console Tools

NuGet を使用して Visual Studio 内での EF コア パッケージ マネージャー コンソール (PMC) ツールの実行Package Manager Consoleです。The EF Core Package Manager Console (PMC) Tools run inside of Visual Studio using NuGet's Package Manager Console. これらのツールは、.NET Framework と .NET Core プロジェクトの両方で動作します。These tools work with both .NET Framework and .NET Core projects.

ヒント

Visual Studio を使用していないか。Not using Visual Studio? コア コマンド ライン ツールの EFクロスプラット フォームにあり、コマンド プロンプト内で実行します。The EF Core Command-line Tools are cross-platform and run inside a command prompt.

ツールのインストールInstalling the tools

Microsoft.EntityFrameworkCore.Tools NuGet パッケージをインストールすることによって、EF コア パッケージ マネージャー コンソールのツールをインストールします。Install the EF Core Package Manager Console Tools by installing the Microsoft.EntityFrameworkCore.Tools NuGet package. 内の次のコマンドを実行して、インストールすることができますPackage Manager Consoleです。You can install it by executing the following command inside Package Manager Console.

Install-Package Microsoft.EntityFrameworkCore.Tools

すべて正常である場合は、このコマンドを実行することができます。If everything worked correctly, you should be able to run this command:

Get-Help about_EntityFrameworkCore

ヒント

スタートアップ プロジェクトの対象 .NET 標準場合サポートされているフレームワークの間のターゲットツールを使用する前にします。If your startup project targets .NET Standard, cross-target a supported framework before using the tools.

重要

使用する場合ユニバーサル WindowsまたはXamarin、EF コードを標準 .NET クラス ライブラリに移動し、サポートされているフレームワークの間のターゲットツールを使用する前にします。If you're using Universal Windows or Xamarin, move your EF code to a .NET Standard class library and cross-target a supported framework before using the tools. スタートアップ プロジェクトとして、クラス ライブラリを指定します。Specify the class library as your startup project.

ツールを使用します。Using the tools

コマンドを呼び出すときに 2 つのプロジェクト。Whenever you invoke a command, there are two projects involved:

ターゲット プロジェクトがすべてのファイルが追加された (または場合によっては削除) します。The target project is where any files are added (or in some cases removed). ターゲット プロジェクトの既定値、既定のプロジェクトパッケージ マネージャー コンソールで、選択されているを使用して指定することもプロジェクト パラメーターです。The target project defaults to the Default project selected in Package Manager Console, but can also be specified using the -Project parameter.

スタートアップ プロジェクトは、プロジェクトのコードを実行すると、ツールでエミュレートです。The startup project is the one emulated by the tools when executing your project's code. 既定値は 1 つスタートアップ プロジェクトとして設定ソリューション エクスプ ローラーでします。It defaults to one Set as StartUp Project in Solution Explorer. 指定できます - スタートアップ プロジェクトに設定パラメーターを使用します。It can also be specified using the -StartupProject parameter.

一般的なパラメーター:Common parameters:

コンテキスト<文字列 >-Context <String> 使用する DbContext です。The DbContext to use.
-プロジェクト<文字列 >-Project <String> 使用するプロジェクトです。The project to use.
-スタートアップ プロジェクトに設定<文字列 >-StartupProject <String> 使用するスタートアップ プロジェクトです。The startup project to use.
-Verbose-Verbose 詳細出力を表示します。Show verbose output.

コマンドに関するヘルプ情報を表示するには、PowerShell を使用してGet-Helpコマンド。To show help information about a command, use PowerShell's Get-Help command.

ヒント

コンテキスト、プロジェクト、およびスタートアップ プロジェクトに設定のパラメーターは、タブ拡張をサポートします。The Context, Project, and StartupProject parameters support tab-expansion.

ヒント

設定env:ASPNETCORE_ENVIRONMENT ASP.NET Core 環境の指定を実行する前にします。Set env:ASPNETCORE_ENVIRONMENT before running to specify the ASP.NET Core environment.

コマンドCommands

追加の移行Add-Migration

新しい移行を追加します。Adds a new migration.

パラメーター:Parameters:

-名前<文字列 >-Name <String> 移行の名前。The name of the migration.
-OutputDir<文字列 >-OutputDir <String> ディレクトリ (およびサブ名前空間) を使用します。The directory (and sub-namespace) to use. パスでは、プロジェクト ディレクトリに対して相対的です。Paths are relative to the project directory. 既定値は「移行」です。Defaults to "Migrations".

注意

内のパラメーター太字が必要ですとで斜体位置指定されます。Parameters in bold are required, and ones in italics are positional.

データベースを削除Drop-Database

データベースを削除します。Drops the database.

パラメーター:Parameters:

-Whatif-WhatIf データベースは削除しますが、それを削除しないを表示します。Show which database would be dropped, but don't drop it.

Get DbContextGet-DbContext

DbContext 型に関する情報を取得します。Gets information about a DbContext type.

削除の移行Remove-Migration

前回の移行を削除します。Removes the last migration.

パラメーター:Parameters:

フォース-Force 移行をデータベースに適用されているかどうかをチェックしないでください。Don't check to see if the migration has been applied to the database.

Scaffold DbContextScaffold-DbContext

スキャフォールディング データベースの DbContext とエンティティの型。Scaffolds a DbContext and entity types for a database.

パラメーター:Parameters:

の接続<文字列 >-Connection <String> データベースへの接続文字列。The connection string to the database.
-プロバイダー <文字列 >-Provider <String> 使用するプロバイダー。The provider to use. (例:(E.g. Microsoft.EntityFrameworkCore.SqlServer)Microsoft.EntityFrameworkCore.SqlServer)
-OutputDir<文字列 >-OutputDir <String> ファイルを置くディレクトリです。The directory to put files in. パスでは、プロジェクト ディレクトリに対して相対的です。Paths are relative to the project directory.
コンテキスト<文字列 >-Context <String> 生成する DbContext の名前。The name of the DbContext to generate.
-スキーマ<String[] >-Schemas <String[]> エンティティ型を生成するテーブルのスキーマです。The schemas of tables to generate entity types for.
-テーブル<String[] >-Tables <String[]> エンティティ型を生成するテーブル。The tables to generate entity types for.
-DataAnnotations-DataAnnotations 属性を使用すると、(可能な場合)、モデルを構成できます。Use attributes to configure the model (where possible). 省略すると、fluent API のみが使用されます。If omitted, only the fluent API is used.
-UseDatabaseNames-UseDatabaseNames データベースから直接テーブルおよび列名を使用します。Use table and column names directly from the database.
フォース-Force 既存のファイルを上書きします。Overwrite existing files.

スクリプトの移行Script-Migration

移行からの SQL スクリプトを生成します。Generates a SQL script from migrations.

パラメーター:Parameters:

-から<文字列 >-From <String> 開始の移行。The starting migration. 既定値は 0 (最初のデータベース)。Defaults to 0 (the initial database).
- <文字列 >-To <String> 終了の移行。The ending migration. 既定値は最後に移行します。Defaults to the last migration.
べし等性-Idempotent すべての移行でのデータベースで使用できるスクリプトを生成します。Generate a script that can be used on a database at any migration.
-出力<文字列 >-Output <String> 結果を書き込むファイルです。The file to write the result to.

ヒント

出力パラメーターは、タブ拡張をサポートします。The To, From, and Output parameters support tab-expansion.

データベースの更新Update-Database

移行<文字列 >-Migration <String> Target の移行。The target migration. '0' の場合はすべての移行を元に戻さです。If '0', all migrations will be reverted. 既定値は最後に移行します。Defaults to the last migration.

ヒント

移行パラメーターは、タブ拡張をサポートします。The Migration parameter supports tab-expansion.