Language

DeleteBehavior 列挙型

定義

プリンシパルが削除されたとき、またはリレーションシップが切断されたときに、リレーションシップ内の依存エンティティに削除操作を適用する方法を示します。

public enum DeleteBehavior
type DeleteBehavior = 
Public Enum DeleteBehavior
継承
DeleteBehavior

フィールド

Name 値 説明
ClientSetNull 0

追跡対象エンティティに変更が加えられたときに外部キー値を null に設定し、データベースに非カスケード外部キー制約を作成します。 これは、省略可能なリレーションシップの既定値です。

Restrict 1

追跡対象エンティティに変更が加えられたときに外部キー値を null に設定し、データベースに非カスケード外部キー制約を作成します。

SetNull 2

追跡対象エンティティに変更が加えられたときに外部キー値を null に設定し、プリンシパルから依存エンティティに null 値を伝達する外部キー制約をデータベースに作成します。

Cascade 3

プリンシパルが削除されるか、プリンシパルとのリレーションシップが切断されたときに依存エンティティを自動的に削除し、連鎖削除が有効になっている外部キー制約をデータベースに作成します。 これは、必要なリレーションシップの既定値です。

ClientCascade 4

プリンシパルが削除されたとき、またはプリンシパルとのリレーションシップが切断されたときに依存エンティティを自動的に削除しますが、データベースに非カスケード外部キー制約を作成します。

NoAction 5

追跡対象エンティティに変更が加えられたときに外部キー値を null に設定し、データベースに非カスケード外部キー制約を作成します。

ClientNoAction 6

追跡対象の依存は削除されず、プリンシパル エンティティの削除時に外部キー値は null に設定されません。 非カスケード外部キー制約がデータベースに作成されます。

SetDefault 7

追跡対象エンティティに変更が加えられた場合に、外部キー値を既定値に設定し、プリンシパルが削除されたときに外部キー値を既定値に設定する外部キー制約をデータベースに作成します。

ClientSetDefault 8

追跡対象エンティティに変更が加えられた場合に、外部キーの値を適切に Sentinel 値に設定しますが、データベースに非カスケード外部キー制約が作成されます。

注釈

データベース内の動作は、適切に作成されるデータベース スキーマに依存します。 このデータベースは、Entity Framework Migrations を使用するとき、または https://learn.microsoft.com/dotnet/api/microsoft.entityframeworkcore.infrastructure.databasefacade.ensurecreated または https://learn.microsoft.com/dotnet/api/microsoft.entityframeworkcore.infrastructure.databasefacade.ensurecreatedasync のいずれかを使用する場合に適切に作成されます。

詳細と例については、「 EF Core での孤立の連鎖削除と削除 」を参照してください。

適用対象