Ferramentas do Console do Gerenciador de pacotes do EF CoreEF Core Package Manager Console Tools

As ferramentas do EF Core pacote Manager Console (PMC) são executadas dentro do Visual Studio usando do NuGet Package Manager Console.The EF Core Package Manager Console (PMC) Tools run inside of Visual Studio using NuGet's Package Manager Console. Essas ferramentas funcionam com projetos do .NET Framework e o do .NET Core.These tools work with both .NET Framework and .NET Core projects.

Dica

Não usando o Visual Studio?Not using Visual Studio? O [ferramentas de linha de comando do EF Core] 1 ficam entre plataformas e são executados dentro de um prompt de comando.The EF Core Command-line Tools are cross-platform and run inside a command prompt.

Instalando as ferramentasInstalling the tools

Instale as ferramentas do Console do Gerenciador de pacotes do EF Core ao instalar o pacote NuGet entityframeworkcore.Install the EF Core Package Manager Console Tools by installing the Microsoft.EntityFrameworkCore.Tools NuGet package. Você pode instalá-lo executando o seguinte comando na Package Manager Console.You can install it by executing the following command inside Package Manager Console.

Install-Package Microsoft.EntityFrameworkCore.Tools

Se tudo funcionou corretamente, você deve ser capaz de executar este comando:If everything worked correctly, you should be able to run this command:

Get-Help about_EntityFrameworkCore

Dica

Se seu projeto de inicialização for destinado ao .NET Standard [direcionamento cruzado uma estrutura com suporte] 3 antes de usar as ferramentas.If your startup project targets .NET Standard, cross-target a supported framework before using the tools.

Importante

Se você estiver usando Windows Universal ou Xamarin, mova seu código do EF para uma biblioteca de classes .NET Standard e [direcionamento cruzado uma estrutura com suporte] 3 antes de usar as ferramentas.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. Especifique a biblioteca de classes como seu projeto de inicialização.Specify the class library as your startup project.

Usando as ferramentasUsing the tools

Sempre que você invoca um comando, existem dois projetos envolvidos:Whenever you invoke a command, there are two projects involved:

O projeto de destino é aquele ao qual todos os arquivos são adicionados (ou, em alguns casos, removidos).The target project is where any files are added (or in some cases removed). O projeto de destino padrão é o projeto padrão selecionado no Console do Gerenciador de pacotes, mas também podem ser especificados usando o - parâmetro de projeto.The target project defaults to the Default project selected in Package Manager Console, but can also be specified using the -Project parameter.

O projeto de inicialização é aquele emulado pelas ferramentas durante a execução do código do seu projeto.The startup project is the one emulated by the tools when executing your project's code. O padrão é uma definir como projeto de inicialização no Gerenciador de soluções.It defaults to one Set as StartUp Project in Solution Explorer. Ele também pode ser especificado usando o parâmetro - o projeto de inicialização.It can also be specified using the -StartupProject parameter.

Parâmetros comuns:Common parameters:

-O contexto <cadeia de caracteres >-Context <String> O DbContext usar.The DbContext to use.
-Projeto <cadeia de caracteres >-Project <String> O projeto para usar.The project to use.
O projeto de inicialização - <cadeia de caracteres >-StartupProject <String> O projeto de inicialização para usar.The startup project to use.
-Verbose-Verbose Mostra saída detalhada.Show verbose output.

Para mostrar informações de ajuda sobre um comando, use o PowerShell Get-Help comando.To show help information about a command, use PowerShell's Get-Help command.

Dica

Os parâmetros de contexto, o projeto e o projeto de inicialização oferecem suporte a expansão da tabulação.The Context, Project, and StartupProject parameters support tab-expansion.

Dica

Definir env:ASPNETCORE_ENVIRONMENT antes de executar para especificar o ambiente do ASP.NET Core.Set env:ASPNETCORE_ENVIRONMENT before running to specify the ASP.NET Core environment.

ComandosCommands

Add-MigrationAdd-Migration

Adiciona uma nova migração.Adds a new migration.

Parâmetros:Parameters:

-Name <cadeia de caracteres >-Name <String> O nome da migração.The name of the migration.
-OutputDir <cadeia de caracteres >-OutputDir <String> O diretório (e sub-namespace) para usar.The directory (and sub-namespace) to use. Caminhos são relativos ao diretório do projeto.Paths are relative to the project directory. O padrão é "Migrações".Defaults to "Migrations".

Observação

Parâmetros em negrito são necessárias e aqueles na itálico são posicionais.Parameters in bold are required, and ones in italics are positional.

Banco de dados de destinoDrop-Database

Descarta o banco de dados.Drops the database.

Parâmetros:Parameters:

-WhatIf-WhatIf Mostrar qual banco de dados deve ser descartado, mas não o remova.Show which database would be dropped, but don't drop it.

Get-DbContextGet-DbContext

Obtém informações sobre um tipo DbContext.Gets information about a DbContext type.

Remove-MigrationRemove-Migration

Remove a última migração.Removes the last migration.

Parâmetros:Parameters:

-Force-Force Reverta a migração, se ele tiver sido aplicado ao banco de dados.Revert the migration if it has been applied to the database.

Scaffold-DbContextScaffold-DbContext

Usa o Scaffold de um DbContext e tipos de entidade para um banco de dados.Scaffolds a DbContext and entity types for a database.

Parâmetros:Parameters:

-Conexão <cadeia de caracteres >-Connection <String> A cadeia de conexão para o banco de dados.The connection string to the database.
-Provedor <cadeia de caracteres >-Provider <String> O provedor a ser usado.The provider to use. (por exemplo, entityframeworkcore)(for example, Microsoft.EntityFrameworkCore.SqlServer)
-OutputDir <cadeia de caracteres >-OutputDir <String> O diretório para colocar os arquivos.The directory to put files in. Caminhos são relativos ao diretório do projeto.Paths are relative to the project directory.
-ContextDir <cadeia de caracteres >-ContextDir <String> O diretório para colocar o arquivo de DbContext.The directory to put DbContext file in. Caminhos são relativos ao diretório do projeto.Paths are relative to the project directory.
-O contexto <cadeia de caracteres >-Context <String> O nome do DbContext para gerar.The name of the DbContext to generate.
-Esquemas <String [] >-Schemas <String[]> Os esquemas de tabelas para gerar tipos de entidade para.The schemas of tables to generate entity types for.
-Tabelas <String [] >-Tables <String[]> As tabelas para gerar tipos de entidade para.The tables to generate entity types for.
-DataAnnotations-DataAnnotations Use atributos para configurar o modelo (quando possível).Use attributes to configure the model (where possible). Se omitido, somente a API fluente é usada.If omitted, only the fluent API is used.
-UseDatabaseNames-UseDatabaseNames Use nomes de tabela e coluna diretamente do banco de dados.Use table and column names directly from the database.
-Force-Force Substitua arquivos existentes.Overwrite existing files.

Migração do scriptScript-Migration

Gera um script SQL de migrações.Generates a SQL script from migrations.

Parâmetros:Parameters:

-From <cadeia de caracteres >-From <String> A migração inicial.The starting migration. O padrão é 0 (o banco de dados inicial).Defaults to 0 (the initial database).
-Para <cadeia de caracteres >-To <String> A migração final.The ending migration. O padrão é para a última migração.Defaults to the last migration.
-Idempotentes-Idempotent Gere um script que pode ser usado em um banco de dados em qualquer migração.Generate a script that can be used on a database at any migration.
-Saída <cadeia de caracteres >-Output <String> O arquivo para gravar o resultado.The file to write the result to.

Dica

Para, de, e os parâmetros de saída oferecem suporte a expansão da tabulação.The To, From, and Output parameters support tab-expansion.

Atualizar banco de dadosUpdate-Database

-Migration <cadeia de caracteres >-Migration <String> A migração de destino.The target migration. Se for '0', todas as migrações serão revertidas.If '0', all migrations will be reverted. O padrão é para a última migração.Defaults to the last migration.

Dica

O parâmetro de migração dá suporte à expansão da tabulação.The Migration parameter supports tab-expansion.