私は自分のデータベースに連絡先テーブルと電話テーブルを持っています。電話テーブルには、連絡先への電話を参照するキーを持つ列「ContactId」があります。
サーバーのキー オプションで、削除オプションを「カスケード」に設定しました。
コンテキストを使用して連絡先を削除しようとすると:
Dim contact As Contact 'The contact I want to delete.
Dim context As New Entities 'The ObjectContext.
context.DeleteObject(contact)
context.SaveChanges()
上記のステートメントは UpdateException をスローし、ContactId 列がその ID に設定されている Phone レコードがまだ Contact にあることを知らせます。
これで、手動で行うことができ、最初に関連するすべての電話を削除してから連絡先を削除できることがわかりましたが、より効率的な方法を探しています。これをすべて自動的に行う必要があります。
どんな提案や実践も歓迎します。
ありがとう。