DeleteBehavior Výčet
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Určuje, jak se operace odstranění použije u závislých entit v relaci, když je objekt zabezpečení odstraněn nebo je relace přerušena.
public enum DeleteBehavior
type DeleteBehavior =
Public Enum DeleteBehavior
- Dědičnost
-
DeleteBehavior
Pole
| Název | Hodnota | Description |
|---|---|---|
| ClientSetNull | 0 | Nastaví hodnoty |
| Restrict | 1 | Nastaví hodnoty |
| SetNull | 2 | Nastaví hodnoty |
| Cascade | 3 | Automaticky odstraní závislé entity při odstranění objektu zabezpečení nebo dojde k odstranění vztahu k objektu zabezpečení a vytvoří v databázi omezení cizího klíče s povolenými kaskádovými odstraněními. Toto je výchozí hodnota pro požadované relace. |
| ClientCascade | 4 | Automaticky odstraní závislé entity při odstranění objektu zabezpečení nebo dojde k odstranění vztahu k objektu zabezpečení, ale v databázi se vytvoří ne cascadingové omezení cizího klíče. |
| NoAction | 5 | Nastaví hodnoty |
| ClientNoAction | 6 | Sledované závislé položky se neodstraní a jejich hodnoty cizího klíče se při odstraňování hlavních entit nenastaví |
| SetDefault | 7 | Nastaví hodnoty cizího klíče na výchozí hodnoty podle potřeby, když se změní sledované entity, a vytvoří v databázi omezení cizího klíče, které nastaví hodnoty cizího klíče na výchozí hodnoty při odstranění objektu zabezpečení. |
| ClientSetDefault | 8 | Nastaví hodnoty cizího klíče na jejich hodnoty sentinelu podle potřeby, pokud se změny pro sledované entity provádějí, ale vytvoří v databázi ne cascadingové omezení cizího klíče. |
Poznámky
Chování v databázi závisí na vhodném vytvoření schématu databáze. Databáze se vytvoří odpovídajícím způsobem při použití migrací entity Framework nebo pomocí některé z https://learn.microsoft.com/dotnet/api/microsoft.entityframeworkcore.infrastructure.databasefacade.ensurecreated nebo https://learn.microsoft.com/dotnet/api/microsoft.entityframeworkcore.infrastructure.databasefacade.ensurecreatedasync .
Další informace a příklady najdete v tématu Kaskádové odstranění a odstranění osamocených objektů v EF Core .