IRelationalDatabaseCreator Arabirim
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Veritabanı/şema oluşturma ve diğer ilgili işlemleri gerçekleştirir.
Bu tür genellikle veritabanı sağlayıcıları (ve diğer uzantılar) tarafından kullanılır. Genellikle uygulama kodunda kullanılmaz.
public interface IRelationalDatabaseCreator : Microsoft.EntityFrameworkCore.Storage.IDatabaseCreator
type IRelationalDatabaseCreator = interface
interface IDatabaseCreator
Public Interface IRelationalDatabaseCreator
Implements IDatabaseCreator
- Türetilmiş
- Uygulamalar
Açıklamalar
Hizmet ömrü şeklindedir Scoped. Bu, her DbContext örneğin kendi bu hizmet örneğini kullanacağı anlamına gelir. Uygulama, herhangi bir yaşam süresiyle kaydedilen diğer hizmetlere bağlı olabilir. Uygulamanın iş parçacığı güvenli olması gerekmez.
Daha fazla bilgi ve örnek için bkz. Veritabanı sağlayıcılarının ve uzantılarının uygulanması .
Yöntemler
| Veri Akışı Adı | Description |
|---|---|
| CanConnect() |
Veritabanının kullanılabilir olup olmadığını ve bağlanıp bağlanamayacağını belirler. (Devralındığı yer: IDatabaseCreator) |
| CanConnectAsync(CancellationToken) |
Veritabanının kullanılabilir olup olmadığını ve bağlanıp bağlanamayacağını belirler. (Devralındığı yer: IDatabaseCreator) |
| Create() |
Fiziksel veritabanını oluşturur. Herhangi bir şemayla doldurmaya çalışmaz. |
| CreateAsync(CancellationToken) |
Fiziksel veritabanını zaman uyumsuz olarak oluşturur. Herhangi bir şemayla doldurmaya çalışmaz. |
| CreateTables() |
Veritabanındaki geçerli model için tüm tabloları oluşturur. Şemayı artımlı olarak güncelleştirme denemesi yapılmaz. Veritabanında tablolardan hiçbirinin mevcut olduğu varsayılır. |
| CreateTablesAsync(CancellationToken) |
Veritabanındaki geçerli model için tüm tabloları zaman uyumsuz olarak oluşturur. Şemayı artımlı olarak güncelleştirme denemesi yapılmaz. Veritabanında tablolardan hiçbirinin mevcut olduğu varsayılır. |
| Delete() |
Fiziksel veritabanını siler. |
| DeleteAsync(CancellationToken) |
Fiziksel veritabanını zaman uyumsuz olarak siler. |
| EnsureCreated() |
Bağlam için veritabanının mevcut olduğundan emin olur. Varsa, hiçbir işlem yapılmaz. Yoksa veritabanı ve tüm şeması oluşturulur. Veritabanı varsa, bu bağlamın modeliyle uyumlu olduğundan emin olmak için hiçbir çaba sarf edilmez. (Devralındığı yer: IDatabaseCreator) |
| EnsureCreatedAsync(CancellationToken) |
Zaman uyumsuz olarak bağlam için veritabanının mevcut olmasını sağlar. Varsa, hiçbir işlem yapılmaz. Yoksa veritabanı ve tüm şeması oluşturulur. Veritabanı varsa, bu bağlamın modeliyle uyumlu olduğundan emin olmak için hiçbir çaba sarf edilmez. (Devralındığı yer: IDatabaseCreator) |
| EnsureDeleted() |
Bağlam için veritabanının mevcut olmadığından emin olur. Yoksa hiçbir işlem yapılmaz. Varsa veritabanı silinir. Uyarı: Veritabanının tamamı silinir ve yalnızca bu bağlam için model tarafından kullanılan veritabanı nesnelerini kaldırmak için hiçbir çaba sarf edilmez. (Devralındığı yer: IDatabaseCreator) |
| EnsureDeletedAsync(CancellationToken) |
Zaman uyumsuz olarak bağlam için veritabanının mevcut olmamasını sağlar. Yoksa hiçbir işlem yapılmaz. Varsa veritabanı silinir. Uyarı: Veritabanının tamamı silinir ve yalnızca bu bağlam için model tarafından kullanılan veritabanı nesnelerini kaldırmak için hiçbir çaba sarf edilmez. (Devralındığı yer: IDatabaseCreator) |
| Exists() |
Fiziksel veritabanının var olup olmadığını belirler. Veritabanının geçerli modelin şemasını içerip içermediğini belirleme girişiminde bulunulmuyor. |
| ExistsAsync(CancellationToken) |
Fiziksel veritabanının var olup olmadığını zaman uyumsuz olarak belirler. Veritabanının geçerli modelin şemasını içerip içermediğini belirleme girişiminde bulunulmuyor. |
| GenerateCreateScript() |
Geçerli model için tüm tabloları oluşturmak için bir betik oluşturur. |
| HasTables() |
Veritabanının tablo içerip içermediğini belirler. Tabloların geçerli modele ait olup olmadığını belirlemeye çalışılmaz. |
| HasTablesAsync(CancellationToken) |
Zaman uyumsuz olarak veritabanının tablo içerip içermediğini belirler. Tabloların geçerli modele ait olup olmadığını belirlemeye çalışılmaz. |