InvalidConstraintException только в конструкторе? - PullRequest
2 голосов
/ 31 января 2011

Я сделал небольшое приложение WPF. Данные хранятся в базовой СУБД и отображаются в сетках данных через привязку данных в DataTables. Для извлечения моих данных я использую соответствующие таблицы-адаптеры.

Я сгенерировал свой DataSet и вставил ограничения. Я компилирую, запускаю и нравится, потому что он делает все, как ожидалось.

Моя проблема:
Сегодня мой дизайнер диалогов начал вести себя очень странно. Он начинает жаловаться на необработанное исключение InvalidConstraintException:

Невозможно очистить таблицу X, поскольку ForeignKeyConstraint FK_X_Y применяет ограничения и в Y есть дочерние строки.

Отношение x - это таблица "Customer", содержащая:
PKey CustomerID
и еще 2 объекта

Отношение y - это таблица, в которой отображается отношение 1-y между клиентом и серийными номерами:
PKey SerialNumber
PKey FKey CustomerID (обновить каскад / удалить каскад)

Как уже было сказано выше, само приложение работает так, как задумано, обработка ограничений работает хорошо. Когда я удаляю Клиента, все его серийные номера также удаляются. При редактировании все ссылки обновляются. Как сказано, работает как задумано.

Но когда я открываю свой конструктор, появляется это исключение.


1 Ответ

0 голосов
/ 29 декабря 2011

Не следует выставлять прямые отношения с СУБД из View.Представление должно только определять его внешний вид, а затем определять источник данных в вашей модели представления.

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