Отключение ограничений при заполнении набора данных в приложениях платформа .NET Framework
Примечание.
Наборы данных и связанные классы являются устаревшими технологиями платформа .NET Framework с начала 2000-х годов, которые позволяют приложениям работать с данными в памяти во время отключения приложений от базы данных. Технологии особенно полезны для приложений, которые позволяют пользователям изменять данные и сохранять изменения обратно в базу данных. Хотя наборы данных оказались очень успешными, мы рекомендуем новым приложениям .NET использовать Entity Framework Core. Entity Framework предоставляет более естественный способ работы с табличными данными в виде объектных моделей, и он имеет более простой интерфейс программирования.
Если набор данных содержит ограничения (например, ограничения внешнего ключа), они могут вызвать ошибки, связанные с порядком операций, выполняемых в наборе данных. Например, загрузка дочерних записей перед загрузкой связанных родительских записей может нарушить ограничение и вызвать ошибку. После загрузки дочерней записи ограничение проверяет наличие связанной родительской записи и вызывает ошибку.
Если не было механизма, разрешающего приостановку временных ограничений, ошибка будет возникать каждый раз, когда вы пытались загрузить запись в дочернюю таблицу. Другим способом приостановки всех ограничений в наборе данных является использование BeginEditсвойств и EndEdit свойств.
Примечание.
События проверки (например, ColumnChanging и RowChanging) не будут возникать при отключении ограничений.
Приостановка ограничений обновления программным способом
В следующем примере показано, как временно отключить проверку ограничений в наборе данных:
Приостановка ограничений обновления с помощью конструктора наборов данных
Откройте свой набор данных в Конструкторе наборов данных. Дополнительные сведения см. в пошаговом руководстве. Создание набора данных в конструкторе наборов данных.
В окне Свойства присвойте свойству EnforceConstraints значение
false
.