Dot-Net
XSD 數據集和忽略外鍵
我在目前應用程序中使用.NET XSD
DataSet和TableAdapter功能設置了一個非常標準的表。我的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 架構相匹配是很好的。
您可以嘗試關閉 DataSet 上的 Check-constraints(它在其屬性中),或更改該關係的屬性,並將鍵更改為簡單引用 - 由您決定。