DataGridView System.Data.ConstraintException при вводе строки - PullRequest
0 голосов
/ 05 июля 2011

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

У меня были проблемы с одной конкретной ошибкой DataGridViewиз;дает мне исключение в виде уникального ограничения на удостоверение личности.Странно то, что я не получаю эту ошибку, когда добавляю новый элемент в таблицу, я получаю ее, когда пытаюсь выбрать строку (любая строка, это не обязательно должен быть добавленный элемент) вDataGridView.Когда вы добавляете элемент в эту таблицу, он последовательно увеличивает идентификатор, и после отладки кажется, что идентификаторы увеличиваются правильно, поэтому я не уверен, почему я получаю эту ошибку.Я новичок в Visual Studio, поэтому я действительно не понимаю, почему я получаю эту ошибку, когда выбираю строку, а не когда элемент добавляется в таблицу.

Могу ли я сказать, в какой строке происходит эта ошибка или почему она возникает, когда я выбираю строку в DGV?Я попытался пометить исключение System.Data.ConstraintException в окне «Исключения», поскольку это обычно работает, но программа не останавливается и выводит меня на соответствующую строку в коде, как это обычно происходит с другими исключениями.Диалоговое окно просто всплывает, и программа продолжает работать как обычно, когда я закрываю его.

Еще одна вещь, на которую следует обратить внимание, это то, что элемент добавлен в базу данных правильно, с правильным идентификатором и всем остальным.Кажется, это не вызывает проблемы, кроме появления диалогового окна исключения.Я знаю, что могу просто обработать событие DataError, чтобы остановить отображение диалогового окна, но мне бы очень хотелось решить это, а не просто скрыть его.

Здесь можно увидеть скриншот исключения:

http://i.imgur.com/VICFv.png

И снова, чтобы было ясно, это исключение появляется, когда я выбираю ЛЮБУЮ строку в DataGridView после добавления новой записи.Кроме того, у меня нет события, установленного для onRowEnter.

Любая помощь с благодарностью!Заранее спасибо.

1 Ответ

0 голосов
/ 05 июля 2011

Может быть, у вас есть своего рода «горячие точки» в последовательности идентификаторов, так что даже если после выбора строки если идентификатор правильно увеличен, он может удвоиться с уже существующим.

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