Как я могу помешать «Каскадному удалению» молча удалить Entity Framework? - PullRequest
1 голос
/ 10 октября 2011

В моей базе данных установлено каскадное удаление.Я также установил каскадное удаление для соответствующего отношения в моей модели EDMX.

Однако, если я удаляю таблицы с отношением из EDMX, а затем добавляю их обратно через «Обновление модели из базы данных» - каскадбыл удален.

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

Возможно, мне нужно изменить свой рабочий процесс, а не удалять и повторно добавлять таблицы в EDMX, а просто вносить все небольшие изменения отдельных столбцов вручную?

1 Ответ

0 голосов
/ 10 октября 2011

Если вы удаляете что-либо из вашей модели, вы также удаляете все свои изменения. Ваши изменения исчезли, и EDMX больше не знает о них. После того, как вы снова добавите таблицы, вы также должны будете снова внести все изменения.

Если вы хотите сохранить свои изменения, не удаляйте свои сущности, а вместо этого запускайте мастер напрямую. Он должен просто обновить существующие объекты, не удаляя большинство ваших изменений. Мне известен только один пример, где это не работает и ваши изменения теряются, и это касается переименования некоторых свойств навигации.

...