XSD DataSet并忽略外键

时间:2008-08-01 16:33:38

标签: .net database xsd

我使用.NET XSD DataSetTableAdapter功能在当前应用中设置了非常标准的表格。我的contracts表包含一些标准合同信息,以及primary department的列。此列是我Departments表的foreign key,其中存储了基本department nameidnotes。这是我SQL Server中的所有设置和功能。

当我使用XSD工具时,我可以立即拖动两个表,它会自动检测/创建这两个表之间的外键。当我在主页上查看合同数据时,这很有用。

但是,当我进入管理页面修改部门数据时,我通常会这样做:

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

taDepartment.Fill(dtDepartment)

但是,此时会抛出异常,说明这里有一个外键引用,我猜是因为我没有填充Contract DataTable

如何解决此问题?我知道我可以简单地从XSD中删除外键以使工作正常,但在那里进行额外的完整性检查并使XSD架构与数据库中的SQL架构匹配是很好的。

1 个答案:

答案 0 :(得分:11)

您可以尝试在DataSet上关闭Check-constraints(它在其属性中),或者更改该关系的属性,并将键更改为简单的引用 - 由您决定。