Entity Framework Core araçları başvurusu-.NET Core CLIEntity Framework Core tools reference - .NET Core CLI

Entity Framework Core için komut satırı arabirimi (CLı) araçları tasarım zamanı geliştirme görevlerini gerçekleştirmeye yöneliktir.The command-line interface (CLI) tools for Entity Framework Core perform design-time development tasks. Örneğin, geçişleroluşturur, geçişleri uygular ve var olan bir veritabanını temel alan bir model için kod oluşturur.For example, they create migrations, apply migrations, and generate code for a model based on an existing database. Komutlar, .NET Core SDKbir parçası olan platformlar arası DotNet komutuna bir uzantıdır.The commands are an extension to the cross-platform dotnet command, which is part of the .NET Core SDK. Bu araçlar .NET Core projeleriyle birlikte çalışır.These tools work with .NET Core projects.

Visual Studio kullanıyorsanız, bunun yerine Paket Yöneticisi konsol araçları önerilir:If you're using Visual Studio, we recommend the Package Manager Console tools instead:

  • Bunlar, el ile dizin geçmeniz gerekmeden, Paket Yöneticisi konsolunda seçilen geçerli projeyle otomatik olarak çalışır.They automatically work with the current project selected in the Package Manager Console without requiring that you manually switch directories.
  • Komut tamamlandıktan sonra komut tarafından oluşturulan dosyaları otomatik olarak açar.They automatically open files generated by a command after the command is completed.

Araçları yüklemeInstalling the tools

Yükleme yordamı proje türüne ve sürümüne bağlıdır:The installation procedure depends on project type and version:

  • EF Core 3. xEF Core 3.x
  • ASP.NET Core sürüm 2,1 ve üzeriASP.NET Core version 2.1 and later
  • EF Core 2. xEF Core 2.x
  • EF Core 1. xEF Core 1.x

EF Core 3. xEF Core 3.x

  • dotnet efGenel veya yerel bir araç olarak yüklenmelidir.dotnet ef must be installed as a global or local tool. Çoğu geliştirici dotnet ef aşağıdaki komutla küresel bir araç olarak yüklenir:Most developers will install dotnet ef as a global tool with the following command:

    dotnet tool install --global dotnet-ef
    

    dotnet efYerel araç olarak da kullanabilirsiniz.You can also use dotnet ef as local tool. Bunu yerel bir araç olarak kullanmak için, bir araç bildirim dosyasıkullanarak bunu araç bağımlılığı olarak bildiren bir projenin bağımlılıklarını geri yükleyin.To use it as a local tool, restore the dependencies of a project that declares it as a tooling dependency using a tool manifest file.

  • .NET Core SDK'i yükler.Install the .NET Core SDK.

  • En son Microsoft.EntityFrameworkCore.Design paketi yükler.Install the latest Microsoft.EntityFrameworkCore.Design package.

    dotnet add package Microsoft.EntityFrameworkCore.Design
    

ASP.NET Core 2.1 +ASP.NET Core 2.1+

  • Geçerli .NET Core SDK'yi yükler.Install the current .NET Core SDK. Visual Studio 2017 ' nin en son sürümüne sahip olsanız bile SDK 'nın yüklenmesi gerekir.The SDK has to be installed even if you have the latest version of Visual Studio 2017.

    Bu, Microsoft.EntityFrameworkCore.Design paketi Microsoft. aspnetcore. app metapackage'e dahil edildiğinden ASP.NET Core 2.1 + için gereklidir.This is all that is needed for ASP.NET Core 2.1+ because the Microsoft.EntityFrameworkCore.Design package is included in the Microsoft.AspNetCore.App metapackage.

EF Core 2. x (ASP.NET Core değil)EF Core 2.x (not ASP.NET Core)

dotnet efKomutlar .NET Core SDK eklenmiştir, ancak paketini yüklemek için sahip olduğunuz komutları etkinleştirir Microsoft.EntityFrameworkCore.Design .The dotnet ef commands are included in the .NET Core SDK, but to enable the commands you have to install the Microsoft.EntityFrameworkCore.Design package.

  • Geçerli .NET Core SDK'yi yükler.Install the current .NET Core SDK. Visual Studio 'nun en son sürümüne sahip olsanız bile SDK 'nın yüklenmesi gerekir.The SDK has to be installed even if you have the latest version of Visual Studio.

  • En son kararlı Microsoft.EntityFrameworkCore.Design paketi yükler.Install the latest stable Microsoft.EntityFrameworkCore.Design package.

    dotnet add package Microsoft.EntityFrameworkCore.Design
    

EF Core 1. xEF Core 1.x

  • .NET Core SDK sürümünü 2.1.200 ' ü yükler.Install the .NET Core SDK version 2.1.200. Sonraki sürümler EF Core 1,0 ve 1,1 için CLı araçlarıyla uyumlu değildir.Later versions are not compatible with CLI tools for EF Core 1.0 and 1.1.

  • Uygulamayı, global.jsdosya üzerinde DEĞIŞTIREREK 2.1.200 SDK sürümünü kullanacak şekilde yapılandırın.Configure the application to use the 2.1.200 SDK version by modifying its global.json file. Bu dosya normalde çözüm dizinine eklenir (projenin üzerinde bir tane).This file is normally included in the solution directory (one above the project).

  • Proje dosyasını düzenleyin ve Microsoft.EntityFrameworkCore.Tools.DotNet öğe olarak ekleyin DotNetCliToolReference .Edit the project file and add Microsoft.EntityFrameworkCore.Tools.DotNet as a DotNetCliToolReference item. En son 1. x sürümünü belirtin, örneğin: 1.1.6.Specify the latest 1.x version, for example: 1.1.6. Bu bölümün sonundaki proje dosyası örneğine bakın.See the project file example at the end of this section.

  • Paketin en son 1. x sürümünü yükler Microsoft.EntityFrameworkCore.Design , örneğin:Install the latest 1.x version of the Microsoft.EntityFrameworkCore.Design package, for example:

    dotnet add package Microsoft.EntityFrameworkCore.Design -v 1.1.6
    

    Paket başvurularının her ikisi de eklendikçe, proje dosyası şuna benzer:With both package references added, the project file looks something like this:

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

    PrivateAssets="All"Bu projeye başvuran projelere açık olmayan bir paket başvurusu.A package reference with PrivateAssets="All" isn't exposed to projects that reference this project. Bu kısıtlama özellikle yalnızca geliştirme sırasında kullanılan paketler için yararlıdır.This restriction is especially useful for packages that are typically only used during development.

Yüklemeyi doğrulaVerify installation

EF Core CLı araçlarının düzgün yüklendiğini doğrulamak için aşağıdaki komutları çalıştırın:Run the following commands to verify that EF Core CLI tools are correctly installed:

dotnet restore
dotnet ef

Komutun çıktısı kullanımdaki araçların sürümünü tanımlar:The output from the command identifies the version of the tools in use:


                     _/\__
               ---==/    \\
         ___  ___   |.    \|\
        | __|| __|  |  )   \\\
        | _| | _|   \_/ |  //|\\
        |___||_|       /   \\\/\\

Entity Framework Core .NET Command-line Tools 2.1.3-rtm-32065

<Usage documentation follows, not shown.>

Araçları güncelleştirmeUpdating the tools

dotnet tool update --global dotnet-efProjenizde yerel olarak yüklü araçlara sahipseniz, genel araçları kullanılabilir en son sürüme güncelleştirmek için kullanın dotnet tool update dotnet-ef .Use dotnet tool update --global dotnet-ef to update the global tools to the latest available version, if you have the tools installed locally in your project use dotnet tool update dotnet-ef. Komutunuz içine ekleyerek belirli bir sürümü yükler --version <VERSION> .Install a specific version by appending --version <VERSION> to your command. Daha fazla bilgi için DotNet aracı belgelerinin güncelleştirme bölümüne bakın.See the Update section of the dotnet tool documentation for more details.

Araçları kullanmaUsing the tools

Araçları kullanmadan önce, bir başlangıç projesi oluşturmanız veya ortamı ayarlamanız gerekebilir.Before using the tools, you might have to create a startup project or set the environment.

Hedef proje ve başlangıç projesiTarget project and startup project

Komutlar bir projeye ve bir başlangıç projesinebaşvurur.The commands refer to a project and a startup project.

  • Ayrıca, komutların dosya eklemesi veya kaldırması nedeniyle Proje hedef proje olarak da bilinir.The project is also known as the target project because it's where the commands add or remove files. Varsayılan olarak, geçerli dizindeki proje hedef projem tir.By default, the project in the current directory is the target project. Seçeneğini kullanarak, hedef proje olarak farklı bir proje belirtebilirsiniz --project .You can specify a different project as target project by using the --project option.

  • Başlangıç projesi , araçların oluşturup çalıştırdığı bir.The startup project is the one that the tools build and run. Araçlar, veritabanı bağlantı dizesi ve modelin yapılandırması gibi proje hakkında bilgi almak için tasarım zamanında uygulama kodu yürütmeniz gerekir.The tools have to execute application code at design time to get information about the project, such as the database connection string and the configuration of the model. Varsayılan olarak, geçerli dizindeki proje başlangıç projem ' dir.By default, the project in the current directory is the startup project. Seçeneğini kullanarak, başlangıç projesi olarak farklı bir proje belirtebilirsiniz --startup-project .You can specify a different project as startup project by using the --startup-project option.

Başlangıç projesi ve hedef proje genellikle aynı projem.The startup project and target project are often the same project. Farklı projeler oldukları tipik bir senaryo şunlardır:A typical scenario where they are separate projects is when:

  • EF Core bağlamı ve varlık sınıfları bir .NET Core sınıf kitaplığında bulunur.The EF Core context and entity classes are in a .NET Core class library.
  • .NET Core konsol uygulaması veya Web uygulaması, sınıf kitaplığına başvurur.A .NET Core console app or web app references the class library.

Geçiş kodunu, EF Core bağlamından ayrı bir sınıf kitaplığına yerleştirmekde mümkündür.It's also possible to put migrations code in a class library separate from the EF Core context.

Diğer hedef çerçevelerOther target frameworks

CLı araçları .NET Core projeleriyle ve .NET Framework projeleriyle çalışır.The CLI tools work with .NET Core projects and .NET Framework projects. .NET Standard Sınıf kitaplığındaki EF Core modeli olan uygulamalarda .NET Core veya .NET Framework projesi bulunmayabilir.Apps that have the EF Core model in a .NET Standard class library might not have a .NET Core or .NET Framework project. Örneğin, bu, Xamarin ve Evrensel Windows Platformu uygulamaları için geçerlidir.For example, this is true of Xamarin and Universal Windows Platform apps. Bu gibi durumlarda, yalnızca amacı araçlar için başlangıç projesi olarak davranacak bir .NET Core konsol uygulaması projesi oluşturabilirsiniz.In such cases, you can create a .NET Core console app project whose only purpose is to act as startup project for the tools. Proje, gerçek kod içermeyen bir kukla proje olabilir — ve yalnızca araç için bir hedef sağlamanız gerekir.The project can be a dummy project with no real code — it is only needed to provide a target for the tooling.

İşlevsiz bir proje neden gereklidir?Why is a dummy project required? Daha önce belirtildiği gibi, araçların uygulama kodunu tasarım zamanında yürütmesi gerekir.As mentioned earlier, the tools have to execute application code at design time. Bunu yapmak için .NET Core çalışma zamanını kullanmaları gerekir.To do that, they need to use the .NET Core runtime. EF Core modeli .NET Core veya .NET Framework hedefleyen bir projede olduğunda, EF Core araçları projeden çalışma zamanını ödünç.When the EF Core model is in a project that targets .NET Core or .NET Framework, the EF Core tools borrow the runtime from the project. EF Core modeli .NET Standard bir sınıf kitaplığınlarsa bunu yapamazlar.They can't do that if the EF Core model is in a .NET Standard class library. .NET Standard gerçek bir .NET uygulamasını değil; .NET uygulamalarının desteklemesi gereken bir API kümesine yönelik bir belirtimdir.The .NET Standard is not an actual .NET implementation; it's a specification of a set of APIs that .NET implementations must support. Bu nedenle .NET Standard uygulama kodunu yürütmek için EF Core araçları yeterli değildir.Therefore .NET Standard is not sufficient for the EF Core tools to execute application code. Başlangıç projesi olarak kullanmak için oluşturduğunuz kukla proje, araçların .NET Standard sınıf kitaplığını yükleyebileceği somut bir hedef platform sağlar.The dummy project you create to use as startup project provides a concrete target platform into which the tools can load the .NET Standard class library.

ASP.NET Core ortamıASP.NET Core environment

ASP.NET Core projelerine yönelik ortamı belirtmek için, komutları çalıştırmadan önce ASPNETCORE_ENVIRONMENT ortam değişkenini ayarlayın.To specify the environment for ASP.NET Core projects, set the ASPNETCORE_ENVIRONMENT environment variable before running commands.

Ortak seçeneklerCommon options

SeçenekOption KısadırShort AçıklamaDescription
--json JSON çıkışını göster.Show JSON output.
--context <DBCONTEXT> -c DbContextKullanılacak sınıf.The DbContext class to use. Yalnızca sınıf adı veya ad alanları ile tam nitelikli.Class name only or fully qualified with namespaces. Bu seçenek atlanırsa, EF Core bağlam sınıfını bulur.If this option is omitted, EF Core will find the context class. Birden çok bağlam sınıfı varsa, bu seçenek gereklidir.If there are multiple context classes, this option is required.
--project <PROJECT> -p Hedef projenin proje klasörünün göreli yolu.Relative path to the project folder of the target project. Varsayılan değer geçerli klasördür.Default value is the current folder.
--startup-project <PROJECT> -s Başlangıç projesinin proje klasörünün göreli yolu.Relative path to the project folder of the startup project. Varsayılan değer geçerli klasördür.Default value is the current folder.
--framework <FRAMEWORK> Hedef çerçeveIçin hedef çerçeve bilinen adı.The Target Framework Moniker for the target framework. Proje dosyası birden çok hedef çerçeve belirttiğinde ve bunlardan birini seçmek istediğinizde kullanın.Use when the project file specifies multiple target frameworks, and you want to select one of them.
--configuration <CONFIGURATION> Derleme yapılandırması, örneğin: Debug veya Release .The build configuration, for example: Debug or Release.
--runtime <IDENTIFIER> Paketlerinin geri yükleneceği hedef çalışma zamanının tanımlayıcısı.The identifier of the target runtime to restore packages for. Çalışma zamanı tanımlayıcıları (RID 'Ler) listesi için bkz. RID kataloğu.For a list of Runtime Identifiers (RIDs), see the RID catalog.
--help -h Yardım bilgilerini göster.Show help information.
--verbose -v Ayrıntılı çıktıyı göster.Show verbose output.
--no-color Çıktıyı renklendirme.Don't colorize output.
--prefix-output Düzeydeki ön ek çıkışı.Prefix output with level.

DotNet EF veritabanı bırakmadotnet ef database drop

Veritabanını bırakır.Drops the database.

Seçenekler:Options:

SeçenekOption KısadırShort AçıklamaDescription
--force -f Onaylama.Don't confirm.
--dry-run Hangi veritabanının bırakılacağını gösterir, ancak onları düşürüyor.Show which database would be dropped, but don't drop it.

DotNet EF veritabanı güncelleştirmesidotnet ef database update

Veritabanını son geçişe veya belirtilen bir geçişe güncelleştirir.Updates the database to the last migration or to a specified migration.

DeğişkenlerindenArguments:

Bağımsız DeğişkenArgument AçıklamaDescription
<MIGRATION> Hedef geçişi.The target migration. Geçişler, ada veya KIMLIĞE göre tanımlanabilir.Migrations may be identified by name or by ID. 0 sayısı, ilk geçişten önceki ve tüm geçişlerin geri alınmasına neden olan özel bir durumdur.The number 0 is a special case that means before the first migration and causes all migrations to be reverted. Hiçbir geçiş belirtilmemişse, komut en son geçişe varsayılan olarak ayarlanır.If no migration is specified, the command defaults to the last migration.

Seçenekler:Options:

SeçenekOption AçıklamaDescription
--connection <CONNECTION> Veritabanına bağlantı dizesi.The connection string to the database. Veya içinde belirtilen varsayılan değer AddDbContext OnConfiguring .Defaults to the one specified in AddDbContext or OnConfiguring. (EF Core 5.0.0 'den ulaşılabilir.)(Available from EF Core 5.0.0 onwards.)

Aşağıdaki örnekler veritabanını belirtilen bir geçişe güncelleştirir.The following examples update the database to a specified migration. İlki geçiş adını, ikincisi ise geçiş KIMLIĞINI ve belirtilen bağlantıyı kullanır:The first uses the migration name and the second uses the migration ID and a specified connection:

dotnet ef database update InitialCreate
dotnet ef database update 20180904195021_InitialCreate --connection your_connection_string

DotNet EF DbContext bilgisidotnet ef dbcontext info

Bir tür hakkında bilgi alır DbContext .Gets information about a DbContext type.

DotNet EF DbContext listesidotnet ef dbcontext list

Kullanılabilir DbContext türleri listeler.Lists available DbContext types.

DotNet EF DbContext iskeledotnet ef dbcontext scaffold

Bir DbContext veritabanı için ve varlık türleri için kod üretir.Generates code for a DbContext and entity types for a database. Bu komutun bir varlık türü oluşturması için, veritabanı tablosunun bir birincil anahtarı olmalıdır.In order for this command to generate an entity type, the database table must have a primary key.

DeğişkenlerindenArguments:

Bağımsız DeğişkenArgument AçıklamaDescription
<CONNECTION> Veritabanına bağlantı dizesi.The connection string to the database. ASP.NET Core 2. x projeleri için değer *= Name = <name of connection string> *olabilir.For ASP.NET Core 2.x projects, the value can be name=<name of connection string>. Bu durumda, ad proje için ayarlanan yapılandırma kaynaklarından gelir.In that case the name comes from the configuration sources that are set up for the project.
<PROVIDER> Kullanılacak sağlayıcı.The provider to use. Genellikle bu, NuGet paketinin adıdır, örneğin: Microsoft.EntityFrameworkCore.SqlServer .Typically this is the name of the NuGet package, for example: Microsoft.EntityFrameworkCore.SqlServer.

Seçenekler:Options:

SeçenekOption KısadırShort AçıklamaDescription
--data-annotations -d Modeli yapılandırmak için öznitelikleri kullanın (mümkün olduğunda).Use attributes to configure the model (where possible). Bu seçenek atlanırsa yalnızca Fluent API kullanılır.If this option is omitted, only the fluent API is used.
--context <NAME> -c DbContextOluşturulacak sınıfın adı.The name of the DbContext class to generate.
--context-dir <PATH> DbContextSınıf dosyasının içine yerleştirilecek dizin.The directory to put the DbContext class file in. Yollar proje dizinine göredir.Paths are relative to the project directory. Ad alanları, Klasör adlarından türetilir.Namespaces are derived from the folder names.
--context-namespace <NAMESPACE> Oluşturulan sınıf için kullanılacak ad alanı DbContext .The namespace to use for the generated DbContext class. Note: geçersiz kılmalar --namespace .Note: overrides --namespace. (EFCore 5.0.0 ile kullanılabilir.)(Available from EFCore 5.0.0 onwards.)
--force -f Varolan dosyaların üzerine yaz.Overwrite existing files.
--output-dir <PATH> -o İçinde varlık sınıfı dosyalarını yerleştirmek için dizin.The directory to put entity class files in. Yollar proje dizinine göredir.Paths are relative to the project directory.
--namespace <NAMESPACE> -n Tüm oluşturulan sınıflar için kullanılacak ad alanı.The namespace to use for all generated classes. Kök ad alanından ve çıkış dizininden varsayılan olarak oluşturulur.Defaults to generated from the root namespace and the output directory. (EFCore 5.0.0 ile kullanılabilir.)(Available from EFCore 5.0.0 onwards.)
--schema <SCHEMA_NAME>... İçin varlık türleri oluşturulacak tablo şemaları.The schemas of tables to generate entity types for. Birden çok şema belirtmek için, --schema her biri için yineleyin.To specify multiple schemas, repeat --schema for each one. Bu seçenek atlanırsa, tüm şemalar dahil edilir.If this option is omitted, all schemas are included.
--table <TABLE_NAME>...--table <TABLE_NAME>... -t İçin varlık türleri oluşturulacak tablolar.The tables to generate entity types for. Birden çok tablo belirtmek için, -t veya --table her biri için yineleyin.To specify multiple tables, repeat -t or --table for each one. Bu seçenek atlanırsa, tüm tablolar dahil edilir.If this option is omitted, all tables are included.
--use-database-names Tablo ve sütun adlarını tam olarak veritabanında göründükleri gibi kullanın.Use table and column names exactly as they appear in the database. Bu seçenek atlanırsa, veritabanı adları C# ad stili kurallarına daha yakından uyum sağlamak için değiştirilir.If this option is omitted, database names are changed to more closely conform to C# name style conventions.
--no-onconfiguring OnConfiguringOluşturulan sınıfta yönteminin oluşturulmasını engeller DbContext .Suppresses generation of the OnConfiguring method in the generated DbContext class. (EFCore 5.0.0 ile kullanılabilir.)(Available from EFCore 5.0.0 onwards.)

Aşağıdaki örnek, tüm şemaları ve tabloları uygular ve yeni dosyaları modeller klasörüne koyar.The following example scaffolds all schemas and tables and puts the new files in the Models folder.

dotnet ef dbcontext scaffold "Server=(localdb)\mssqllocaldb;Database=Blogging;Trusted_Connection=True;" Microsoft.EntityFrameworkCore.SqlServer -o Models

Aşağıdaki örnek yalnızca seçili tabloları ve bağlamı belirtilen bir ad ve ad alanı ile ayrı bir klasörde oluşturur:The following example scaffolds only selected tables and creates the context in a separate folder with a specified name and namespace:

dotnet ef dbcontext scaffold "Server=(localdb)\mssqllocaldb;Database=Blogging;Trusted_Connection=True;" Microsoft.EntityFrameworkCore.SqlServer -o Models -t Blog -t Post --context-dir Context -c BlogContext --context-namespace New.Namespace

DotNet EF geçişleri eklemedotnet ef migrations add

Yeni bir geçiş ekler.Adds a new migration.

DeğişkenlerindenArguments:

Bağımsız DeğişkenArgument AçıklamaDescription
<NAME> Geçişin adı.The name of the migration.

Seçenekler:Options:

SeçenekOption KısadırShort AçıklamaDescription
--output-dir <PATH> -o Dizin, dosyaların çıktısını almak için kullanılır.The directory use to output the files. Yollar, hedef proje dizini ile ilişkilidir.Paths are relative to the target project directory. Varsayılan olarak "geçişler" olur.Defaults to "Migrations".
--namespace <NAMESPACE> -n Oluşturulan sınıflar için kullanılacak ad alanı.The namespace to use for the generated classes. Varsayılan olarak çıkış dizininden oluşturulur.Defaults to generated from the output directory. (EFCore 5.0.0 ile kullanılabilir.)(Available from EFCore 5.0.0 onwards.)

DotNet EF geçişleri listesidotnet ef migrations list

Kullanılabilir geçişleri listeler.Lists available migrations.

DotNet EF geçişleri kaldırdotnet ef migrations remove

Son geçişi kaldırır (geçiş için yapılan kod değişikliklerini geri kaydeder).Removes the last migration (rolls back the code changes that were done for the migration).

Seçenekler:Options:

SeçenekOption KısadırShort AçıklamaDescription
--force -f Geçişi geri alma (veritabanına uygulanan değişiklikleri geri alın).Revert the migration (roll back the changes that were applied to the database).

DotNet EF geçişleri betiğidotnet ef migrations script

Geçişlerden bir SQL betiği oluşturur.Generates a SQL script from migrations.

DeğişkenlerindenArguments:

Bağımsız DeğişkenArgument AçıklamaDescription
<FROM> Geçiş başlatılıyor.The starting migration. Geçişler, ada veya KIMLIĞE göre tanımlanabilir.Migrations may be identified by name or by ID. 0 sayısı, ilk geçişten öncekianlamına gelen özel bir durumdur.The number 0 is a special case that means before the first migration. Varsayılan değer 0 ' dır.Defaults to 0.
<TO> Son geçiş.The ending migration. Son geçişin varsayılan değeri.Defaults to the last migration.

Seçenekler:Options:

SeçenekOption KısadırShort AçıklamaDescription
--output <FILE> -o Betiğe yazılacak dosya.The file to write the script to.
--idempotent -i Herhangi bir geçişte veritabanında kullanılabilecek bir betik oluşturun.Generate a script that can be used on a database at any migration.

Aşağıdaki örnek, ınitialcreate geçişi için bir komut dosyası oluşturur:The following example creates a script for the InitialCreate migration:

dotnet ef migrations script 0 InitialCreate

Aşağıdaki örnek, ınitialcreate geçişinden sonra tüm geçişler için bir komut dosyası oluşturur.The following example creates a script for all migrations after the InitialCreate migration.

dotnet ef migrations script 20180904195021_InitialCreate

Ek kaynaklarAdditional resources