Jazyk

DeleteBehavior Výčet

Definice

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 null cizího klíče podle potřeby v případě, že jsou provedeny změny sledovaných entit a vytvoří v databázi ne cascadingové omezení cizího klíče. Toto je výchozí hodnota pro volitelné relace.

Restrict 1

Nastaví hodnoty null cizího klíče podle potřeby v případě, že jsou provedeny změny sledovaných entit a vytvoří v databázi ne cascadingové omezení cizího klíče.

SetNull 2

Nastaví hodnoty null cizího klíče podle potřeby, pokud jsou provedeny změny sledovaných entit a vytvoří omezení cizího klíče v databázi, která šíří null hodnoty z objektů zabezpečení do závislých.

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 null cizího klíče podle potřeby v případě, že jsou provedeny změny sledovaných entit a vytvoří v databázi ne cascadingové omezení cizího klíče.

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í null . V databázi se vytvoří ne cascadingové omezení cizího klíče.

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 .

Platí pro