DeleteBehavior 列舉
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
表示當主體被刪除或關係中斷時,如何對關係中的相依實體執行刪除操作。
public enum DeleteBehavior
type DeleteBehavior =
Public Enum DeleteBehavior
- 繼承
-
DeleteBehavior
欄位
| 名稱 | 值 | Description |
|---|---|---|
| ClientSetNull | 0 | 當對追蹤實體進行變更時,將外鍵值設定為 |
| Restrict | 1 | 當對追蹤實體進行變更時,將外鍵值設定為 |
| SetNull | 2 | 當對追蹤實體進行變更時,會將外鍵值設定為 |
| Cascade | 3 | 當主體被刪除或與主體的關係中斷時,會自動刪除相依實體,並在資料庫中建立一個啟用串接刪除的外鍵約束。 這是必須建立關係的預設方式。 |
| ClientCascade | 4 | 當主體被刪除或與主體的關係中斷時,會自動刪除相依實體,但在資料庫中建立非級聯的外鍵約束。 |
| NoAction | 5 | 當對追蹤實體進行變更時,將外鍵值設定為 |
| ClientNoAction | 6 | 追蹤的依賴物件不會被刪除,且其外鍵值在刪除主要實體時也不會設定為 。 |
| SetDefault | 7 | 當對追蹤實體進行變更時,會將外鍵值設定為預設值,並在資料庫中建立外鍵限制,當主體被刪除時,將外鍵值設為預設值。 |
| ClientSetDefault | 8 | 當對追蹤實體進行變更時,會將外鍵值設為哨兵值,但在資料庫中建立非串接的外鍵限制。 |
備註
資料庫中的行為依賴於適當建立的資料庫結構。 當使用 Entity Framework 遷移或使用其中一種https://learn.microsoft.com/dotnet/api/microsoft.entityframeworkcore.infrastructure.databasefacade.ensurecreated或https://learn.microsoft.com/dotnet/api/microsoft.entityframeworkcore.infrastructure.databasefacade.ensurecreatedasync
更多資訊與範例請參見 EF Core 中的 Cascade 刪除與刪除孤兒 。