DatabaseFacade.EnsureCreated Yöntem

Tanım

Bağlam için veritabanının mevcut olmasını sağlar.

public virtual bool EnsureCreated ();
[System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Migrations operations require building the design-time model which is not supported with NativeAOT Use a migration bundle or an alternate way of executing migration operations.")]
public virtual bool EnsureCreated ();
abstract member EnsureCreated : unit -> bool
override this.EnsureCreated : unit -> bool
[<System.Diagnostics.CodeAnalysis.RequiresDynamicCode("Migrations operations require building the design-time model which is not supported with NativeAOT Use a migration bundle or an alternate way of executing migration operations.")>]
abstract member EnsureCreated : unit -> bool
override this.EnsureCreated : unit -> bool
Public Overridable Function EnsureCreated () As Boolean

Döndürülenler

true veritabanı oluşturulduysa, false zaten varsa.

Öznitelikler

Açıklamalar

  • Veritabanı varsa ve tablo varsa hiçbir işlem yapılmaz. Veritabanı şemasının Entity Framework modeliyle uyumlu olduğundan emin olmak için hiçbir şey yapılmaz.
  • Veritabanı varsa ancak herhangi bir tablosu yoksa, Entity Framework modeli veritabanı şemasını oluşturmak için kullanılır.
  • Veritabanı yoksa veritabanı oluşturulur ve Entity Framework modeli veritabanı şemasını oluşturmak için kullanılır.

Entity Framework kullanarak test ederken veya prototip oluştururken hemen sonrasında EnsureDeleted() kullanılması EnsureCreated() yaygın bir durumdur. Bu, testin/prototipin her yürütülmesinden önce veritabanının temiz durumda olmasını sağlar. Ancak, veritabanındaki verilerin korunmadığını unutmayın.

Bu API'nin veritabanını oluşturmak için geçişleri kullanmadığını **** unutmayın. Ayrıca, oluşturulan veritabanı daha sonra geçişler kullanılarak güncelleştirilemez. İlişkisel bir veritabanını hedefleyip geçişleri kullanıyorsanız, veritabanının geçişler kullanılarak oluşturulduğundan ve tüm geçişlerin uygulandığından emin olmak için kullanabilirsiniz Microsoft.EntityFrameworkCore.RelationalDatabaseFacadeExtensions.Migrate .

Daha fazla bilgi ve örnek için bkz. EF Core ile veritabanı şemalarını yönetme ve Veritabanı oluşturma API'leri .

Şunlara uygulanır