Я сделал небольшое приложение WPF. Данные хранятся в базовой СУБД и отображаются в сетках данных через привязку данных в DataTables. Для извлечения моих данных я использую соответствующие таблицы-адаптеры.
Я сгенерировал свой DataSet и вставил ограничения. Я компилирую, запускаю и нравится, потому что он делает все, как ожидалось.
Моя проблема:
Сегодня мой дизайнер диалогов начал вести себя очень странно. Он начинает жаловаться на необработанное исключение InvalidConstraintException:
Невозможно очистить таблицу X, поскольку ForeignKeyConstraint FK_X_Y применяет ограничения и в Y есть дочерние строки.
Отношение x - это таблица "Customer", содержащая:
PKey CustomerID
и еще 2 объекта
Отношение y - это таблица, в которой отображается отношение 1-y между клиентом и серийными номерами:
PKey SerialNumber
PKey FKey CustomerID (обновить каскад / удалить каскад)
Как уже было сказано выше, само приложение работает так, как задумано, обработка ограничений работает хорошо. Когда я удаляю Клиента, все его серийные номера также удаляются. При редактировании все ссылки обновляются. Как сказано, работает как задумано.
Но когда я открываю свой конструктор, появляется это исключение.