Ferramentas do EF Core Package Manager ConsoleEF Core Package Manager Console Tools

As ferramentas de EF Core pacote Manager Console (PMC) são executadas dentro do Visual Studio usando o 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 trabalhar com projetos do .NET Framework e o .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 EF principais ferramentas de linha de comando 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 EF Core Package Manager Console instalando o pacote Microsoft.EntityFrameworkCore.Tools NuGet.Install the EF Core Package Manager Console Tools by installing the Microsoft.EntityFrameworkCore.Tools NuGet package. Você pode instalá-lo executando o seguinte comando em 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 tem como destino .NET Standard destino entre uma estrutura com suporte 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 Universal do Windows ou Xamarin, mova seu código EF para uma biblioteca de classes .NET padrão e destino entre uma estrutura com suporte 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 classe como seu projeto de inicialização.Specify the class library as your startup project.

Usando as ferramentasUsing the tools

Sempre que você chamar um comando, há dois projetos envolvidas:Whenever you invoke a command, there are two projects involved:

O projeto de destino é onde 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 é a projeto padrão selecionado no Console do Gerenciador de pacotes, mas também podem ser especificadas usando-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 é emulado pelas ferramentas durante a execução de código do projeto.The startup project is the one emulated by the tools when executing your project's code. O padrão é um 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 - StartupProject.It can also be specified using the -StartupProject parameter.

Parâmetros comuns:Common parameters:

-Contexto <cadeia de caracteres >-Context <String> O DbContext para usar.The DbContext to use.
-Projeto <cadeia de caracteres >-Project <String> O projeto a usar.The project to use.
-StartupProject <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 do 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 StartupProject suportam 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

Adicionar-migraçãoAdd-Migration

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

Parâmetros:Parameters:

-Nome <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) a ser usado.The directory (and sub-namespace) to use. Caminhos são relativas 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ários e aqueles na itálico são posicional.Parameters in bold are required, and ones in italics are positional.

Remover banco de dadosDrop-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 solte-o.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-migraçãoRemove-Migration

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

Parâmetros:Parameters:

-Force-Force Não verificar se a migração tiver sido aplicada ao banco de dados.Don't check to see if the migration has been applied to the database.

Scaffold DbContextScaffold-DbContext

Scaffolds um tipos DbContext e 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 caracteres 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 ex.:(E.g. Microsoft.EntityFrameworkCore.SqlServer)Microsoft.EntityFrameworkCore.SqlServer)
-OutputDir <cadeia de caracteres >-OutputDir <String> O diretório de colocar arquivos em.The directory to put files in. Caminhos são relativas ao diretório do projeto.Paths are relative to the project directory.
-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 (onde for 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).
- <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.
-Idempotente-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, e expansão da tabulação oferece suporte a parâmetros de saída.The To, From, and Output parameters support tab-expansion.

Atualizar banco de dadosUpdate-Database

-Migração <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 a expansão da tabulação.The Migration parameter supports tab-expansion.