Удалить объект с ограничениями ссылочной целостности - PullRequest
1 голос
/ 20 октября 2010

Допустим, у вас есть следующие таблицы:

Friend
------
Id int not null (primary key)
Name nvarchar(50) not null

Address
-------
Id int not null (primary key)
FriendId int not null (links to Friend.Id)
City nvarchar(50) null
Country nvarchar(50) not null

Используя Entity Framework 4, я выполняю вызов ObjectContext.ExecuteStoreCommand для удаления некоторых друзей.Тем не менее я получаю ошибку, которая говорит что-то вроде:

* System.Data.SqlClient.SqlException был необработан.Конфликт произошел в базе данных «MyFriends», таблице «dbo.Address», столбце «FriendId».Оператор был прекращен. *

Как мне убедиться, что все, что Каскад удаляет?Есть ли какое-либо свойство в базе данных, которое я должен установить?

1 Ответ

3 голосов
/ 20 октября 2010

Похоже, у вас нет каскадов, правильно настроенных на ваших SQL FK. Возможно, у вас нет настроек каскада? Если вы не используете инфраструктуру для удаления (и, возможно, даже если это так), сервер SQL должен быть настроен для каскадного удаления.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...