Прекратить распространение удаляет - PullRequest
0 голосов
/ 25 марта 2010

Это только я или кто-то еще считает, что EF очень трудно использовать в реальном приложении: (

Я использую его как слой данных и создал собственные бизнес-объекты. У меня возникают трудности при преобразовании бизнес-объектов обратно в объекты EF и обновлении / добавлении / удалении из базы данных. Кто-нибудь знает хороший, простой пример этого?

На самом деле текущая проблема, которая сводит меня с ума, - это когда я удаляю что-то EF пытается удалить и другие связанные вещи. Например, если я удалю счет, он также удалит ассоциированного клиента! Кажется странным Я не могу понять, как это остановить.

// tried:
invoiceEfData.CustomerReference = null;

// also tried
invoiceEfData.Customer = null;

context.DeleteObject(invoiceEfData);
context.SaveChanges();

// at this point I get a database error due to it attempting to delete the customer

1 Ответ

0 голосов
/ 25 марта 2010

Вы уверены, что ваша база данных не настроена на попытки каскадного удаления?

Еще одна вещь, которую нужно проверить, взломать файл .edmx в редакторе xml и посмотреть, есть ли такая строка, которая относится к рассматриваемому объекту:

<OnDelete Action="Cascade"></OnDelete>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...