Поскольку это перепечатка статьи, источник здесь указан, прошу прощения, если есть статьи, которые уже были перенесены без указаний, потому что некоторые из них больше не могут найти источник или по другим причинам.
Если вы обижены, пожалуйста, свяжитесь со мной, удалите сообщение или укажите источник.
Потому что раньше я просто хотел собирать хорошие статьи, но иногда связь прекращается, и теперь я обращаюсь напрямую к себе, когда натыкаюсь на хорошую.
Оригинальный источник http://blog.csdn.net/snowinfish/article/details/11567301
При записи данных в модель ADO.NET сущности в VS2012 постоянно появляется сообщение «DbEntityValidationException не обработано» и «Проверка одной или нескольких сущностей не выполнена. Для получения дополнительной информации см. Свойства EntityValidationErrors.
Я сам протестировал следующие два объекта, в основном ошибку, вызванную "operate911".
Я проверил информацию в интернете и обратился к следующей статье.
Обходной путь для просмотра деталей EntityValidationErrors
http://www.cnblogs.com/zhourq/archive/2011/11/03/2234720.html
Однако при написании исключения система не имеет «DbEntityValidationException», что, как предполагается, связано с отсутствием ссылки на пространство имён.
Поэтому добавили:
[Шарп] Просмотр обычной копии с использованием System.Data.Validation;
Соответствующая процедура модифицируется в: [Шарп] Просмотр обычной копии Попробуй { сущности. Operate911.Add(operate911); сущности. SaveChanges(); } catch (DbEntityValidationException dbEx) {
} Старт, без исключения, «operate911» не записывает данные в таблицу базы данных. Причина проверки в том, что при написании дополнительной программы нет заполнения данных для столбца, который не разрешен быть пустым, и после модификации программа запускается, и тест проходит успешно.
Однако, если вы не напишете исключение, продолжайте подсказывать верхнюю ошибку.
Кроме того, параметр «dbEx» после предложения «catch (DbEntityValidationException dbEx)» можно записать без записи.
Продолжайте оставаться неизвестными...
Дополнение 09.12:
Вышеуказанные попытки и ловли написаны неправильно, и исключение не бросается, а изменяется на:
[Шарп] Просмотр обычной копии Попробуй { var operateSpt = новый OperateSpt(ymd, timeNow, Operate); сущности. OperateSpts.Add(operateSpt); сущности. SaveChanges(); }
catch (DbEntityValidationException ex) { MessageBox.Show (например. Message); }
Результаты показаны на рисунке ниже.
Продолжайте оставаться неизвестными...
Дополнение: Решение проблем.
Причина: Письменные данные не совпадают с настройками таблицы.
Моя причина в том, что на определённом этапе записанные данные пусты, но исходная таблица настроена на «не разрешается быть пустой», поэтому при выполнении этого шага будет исключение.
Я был слишком неосторожен и никогда не думал об этой проблеме, когда видел другие операции, записанные в данные, когда смотрел на данные.
|