Подтвердить что ты не робот

XSD DataSets и игнорирование внешних ключей

У меня есть довольно стандартная таблица в текущем приложении, используя .NET XSD DataSet и TableAdapter. Таблица My contracts состоит из некоторой стандартной информации о контракте с столбцом для primary department. Этот столбец является внешним ключом в моей таблице Departments, где я храню основные department name, id, notes. Все это настроено и функционирует в моем SQL Server.

Когда я использую инструмент XSD, я могу одновременно перетащить обе таблицы, и он автоматически обнаруживает/создает внешний ключ, который у меня есть между этими двумя таблицами. Это отлично работает, когда я нахожусь на моей главной странице и просматриваю данные контракта.

Однако, когда я перехожу на свою административную страницу, чтобы изменить данные отдела. Обычно я делаю что-то вроде этого:

Dim dtDepartment As New DepartmentDataTable()
Dim taDepartment As New DepartmentTableAdapter()

taDepartment.Fill(dtDepartment)

Однако в этот момент возникает исключение, говорящее о том, что здесь есть ссылка на внешний ключ, я предполагаю, что у меня нет заполненного Contract DataTable.

Как я могу исправить эту проблему? Я знаю, что могу просто удалить внешний ключ из XSD, чтобы все было нормально, но наличие дополнительной проверки целостности там и наличие схемы XSD соответствует схеме SQL в базе данных.

4b9b3361

Ответ 1

Вы можете попробовать отключить ограничения проверки на DataSet (в его свойствах) или изменить свойства этого отношения и сменить ключ на простую ссылку - до вас.

Ответ 2

Отключите Check-Constraints в меню свойств, это лучший способ!