Narzędzia wiersza polecenia platformy .NET Core EFEF Core .NET Command-line Tools

Narzędzia wiersza polecenia programu Entity Framework Core .NET są rozszerzenia dla wielu platform dotnet polecenia, który jest częścią programu .NET Core SDK.The Entity Framework Core .NET Command-line Tools are an extension to the cross-platform dotnet command, which is part of the .NET Core SDK.

Porada

Jeśli używasz programu Visual Studio, firma Microsoft zaleca narzędzia PMC zamiast ponieważ zapewniają większą integrację.If you're using Visual Studio, we recommend the PMC Tools instead since they provide a more integrated experience.

Instalowanie narzędziInstalling the tools

Zainstaluj narzędzia wiersza polecenia platformy .NET Core EF trzy kroki:Install the EF Core .NET Command-line Tools using these steps:

  1. Edytuj plik projektu i dodać Microsoft.EntityFrameworkCore.Tools.DotNet jako element DotNetCliToolReference (patrz poniżej)Edit the project file and add Microsoft.EntityFrameworkCore.Tools.DotNet as a DotNetCliToolReference item (See below)
  2. Uruchom następujące polecenia:Run the following commands:

    dotnet add package Microsoft.EntityFrameworkCore.Design
    dotnet restore
    

Projekt wynikowy powinien wyglądać następująco:The resulting project should look something like this:

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>netcoreapp2.0</TargetFramework>
  </PropertyGroup>
  <ItemGroup>
    <PackageReference Include="Microsoft.EntityFrameworkCore.Design"
                      Version="2.0.0"
                      PrivateAssets="All" />
  </ItemGroup>
  <ItemGroup>
    <DotNetCliToolReference Include="Microsoft.EntityFrameworkCore.Tools.DotNet"
                            Version="2.0.0" />
  </ItemGroup>
</Project>

Uwaga

Odwołanie pakietu z PrivateAssets="All" oznacza, że nie jest on ujawniony dla projektów odwołujących się do tego projektu, co jest szczególnie przydatne w przypadku pakietów, które zwykle są używane tylko podczas tworzenia.A package reference with PrivateAssets="All" means it isn't exposed to projects that reference this project, which is especially useful for packages that are typically only used during development.

Jeśli tak, nie wszystkie prawa należy pomyślnie uruchomić następujące polecenie w wierszu polecenia.If you did everything right, you should be able to successfully run the following command in a command prompt.

dotnet ef

Korzystając z narzędziUsing the tools

Przy każdym wywołaniu polecenia obejmuje dwa projekty:Whenever you invoke a command, there are two projects involved:

Projekt docelowy jest w przypadku, gdy zostaną dodane wszystkie pliki (lub w niektórych przypadkach usunięte).The target project is where any files are added (or in some cases removed). Docelowy projekt domyślnie projektu w bieżącym katalogu, ale można zmienić za pomocą --projektu opcji.The target project defaults to the project in the current directory, but can be changed using the --project option.

Projekt startowy jest emulowane przez narzędzia podczas wykonywania kodu projektu.The startup project is the one emulated by the tools when executing your project's code. On również domyślnie projektu w bieżącym katalogu, ale można zmienić za pomocą — projekt startowy opcji.It also defaults to the project in the current directory, but can be changed using the --startup-project option.

Typowe opcje:Common options:

--json--json Pokaż dane wyjściowe JSON.Show JSON output.
-c-c --kontekstu <DBCONTEXT >--context <DBCONTEXT> DbContext do użycia.The DbContext to use.
-p-p --projektu <projektu >--project <PROJECT> Projekt do użycia.The project to use.
-s-s --Projekt startowy <projektu >--startup-project <PROJECT> Projekt startowy do użycia.The startup project to use.
--framework <FRAMEWORK >--framework <FRAMEWORK> Platformy docelowej.The target framework.
--Konfiguracja <CONFIGURATION >--configuration <CONFIGURATION> Konfiguracja do użycia.The configuration to use.
środowisko uruchomieniowe — <identyfikator >--runtime <IDENTIFIER> Środowiska uruchomieniowego do użycia.The runtime to use.
-h-h — Pomoc--help Pokaż informacje pomocy.Show help information.
-v-v -verbose--verbose Pokaż pełne dane wyjściowe.Show verbose output.
— Brak koloru--no-color Nie kolorowanie danych wyjściowych.Don't colorize output.
--dane wyjściowe prefiksu--prefix-output Dane wyjściowe z poziomu prefiks.Prefix output with level.

Porada

Aby w środowisku ASP.NET Core, ustaw ASPNETCORE_ENVIRONMENT zmiennej środowiskowej przed uruchomieniem.To specify the ASP.NET Core environment, set the ASPNETCORE_ENVIRONMENT environment variable before running.

PoleceniaCommands

Usuń bazę danych ef DotNetdotnet ef database drop

Odrzuca bazy danych.Drops the database.

Opcje:Options:

-f-f --wymusić--force Nie potwierdzić.Don't confirm.
--przebiegu próbnego--dry-run Pokaż bazę danych, która będą pomijane, ale nie jej porzucić.Show which database would be dropped, but don't drop it.

Aktualizacja bazy danych ef DotNetdotnet ef database update

Aktualizuje bazę danych do określonego migracji.Updates the database to a specified migration.

Argumenty:Arguments:

<MIGRACJA ><MIGRATION> Migracja docelowych.The target migration. Jeśli 0, będzie można przywrócić wszystkich migracji.If 0, all migrations will be reverted. Domyślnie ostatni migracji.Defaults to the last migration.

informacje o dbcontext ef DotNetdotnet ef dbcontext info

Pobiera informacje o typie DbContext.Gets information about a DbContext type.

Lista dbcontext ef DotNetdotnet ef dbcontext list

Wyświetla listę dostępnych typów DbContext.Lists available DbContext types.

szkieletu dbcontext ef DotNetdotnet ef dbcontext scaffold

Rusztowania DbContext i jednostki typy dla bazy danych.Scaffolds a DbContext and entity types for a database.

Argumenty:Arguments:

<POŁĄCZENIA ><CONNECTION> Parametry połączenia z bazą danych.The connection string to the database.
<DOSTAWCA ><PROVIDER> Dostawca do użycia.The provider to use. (Np.(E.g. Microsoft.EntityFrameworkCore.SqlServer)Microsoft.EntityFrameworkCore.SqlServer)

Opcje:Options:

-d-d --adnotacji danych--data-annotations Użyj atrybutów, aby skonfigurować model (jeśli będzie to możliwe).Use attributes to configure the model (where possible). Przypadku jego pominięcia jest używana tylko interfejsu API fluent.If omitted, only the fluent API is used.
-c-c --kontekstu <NAME >--context <NAME> Nazwa typu DbContext.The name of the DbContext.
-f-f --wymusić--force Zastąpienie istniejących plików.Overwrite existing files.
-o-o --katalog wyjściowy <ŚCIEŻKĘ >--output-dir <PATH> Umieścić pliki katalogu.The directory to put files in. Ścieżki są względem katalogu projektu.Paths are relative to the project directory.
--schematu <SCHEMA_NAME >...--schema <SCHEMA_NAME>... Schematy tabele, aby wygenerować typy jednostek.The schemas of tables to generate entity types for.
-t-t --tabeli <nazwa_tabeli >...--table <TABLE_NAME>... Tabele, aby wygenerować typy jednostek.The tables to generate entity types for.
--nazwy w przypadku baz danych użycia--use-database-names Użyj nazwy tabel i kolumn bezpośrednio z bazy danych.Use table and column names directly from the database.

Dodaj migracje ef DotNetdotnet ef migrations add

Dodaje nowe migracji.Adds a new migration.

Argumenty:Arguments:

<NAZWA ><NAME> Nazwa migracji.The name of the migration.

Opcje:Options:

-o-o --katalog wyjściowy <ŚCIEŻKĘ >--output-dir <PATH> Katalog (i przestrzeni nazw sub) do użycia.The directory (and sub-namespace) to use. Ścieżki są względem katalogu projektu.Paths are relative to the project directory. Wartość domyślna to "Migracji".Defaults to "Migrations".

Lista migracje ef DotNetdotnet ef migrations list

Wyświetla listę dostępnych migracji.Lists available migrations.

Usuń migracje ef DotNetdotnet ef migrations remove

Usuwa ostatniej migracji.Removes the last migration.

Opcje:Options:

-f-f --wymusić--force Nie Sprawdź, czy migracja zostały zastosowane do bazy danych.Don't check to see if the migration has been applied to the database.

skrypt migracje ef DotNetdotnet ef migrations script

Generuje skrypt SQL z migracji.Generates a SQL script from migrations.

Argumenty:Arguments:

<Z ><FROM> Początkowy migracji.The starting migration. Wartość domyślna to 0 (początkowej bazy danych).Defaults to 0 (the initial database).
<ABY ><TO> Końcowy migracji.The ending migration. Domyślnie ostatni migracji.Defaults to the last migration.

Opcje:Options:

-o-o --dane wyjściowe <pliku >--output <FILE> Plik można zapisać wynik.The file to write the result to.
-i-i --idempotentności--idempotent Generuj skrypt, który może być używany z bazy danych w każdej migracji.Generate a script that can be used on a database at any migration.