2008-08-01 11 views
25

J'ai une jolie configuration de table standard dans une application en cours en utilisant les fonctions .NETXSDDataSet et TableAdapter. Ma table contracts comprend des informations de contrat standard, avec une colonne pour le primary department. Cette colonne est un foreign key à ma table Departments, où je stocke l'department name de base, id, notes. Tout est configuré et fonctionne dans mon SQL Server.XSD DataSets et ignorer les clés étrangères

Lorsque j'utilise l'outil XSD, je peux faire glisser les deux tables à la fois et il détecte automatiquement/crée la clé étrangère je entre ces deux tables. Cela fonctionne très bien quand je suis sur ma page principale et que je regarde les données du contrat.

Cependant, quand je vais à ma page d'administration de modifier les données du ministère. Je fais habituellement quelque chose comme ceci:

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

taDepartment.Fill(dtDepartment) 

Cependant, à ce stade, une exception est levée en disant à l'effet qu'il ya une référence clé étrangère ici cassé, je devine que je n'ai pas le ContractDataTable rempli.

Comment puis-je résoudre ce problème? Je sais que je peux simplement supprimer la clé étrangère du XSD pour que tout fonctionne correctement, mais avoir une vérification d'intégrité supplémentaire et avoir le schéma XSD correspondant au schéma SQL dans la base de données est bien.

Répondre

10

Vous pouvez essayer de désactiver les contraintes Check sur le DataSet (dans ses propriétés), ou modifier les propriétés de cette relation, et changer la clé en une référence simple - à vous.

0

Désactiver Check-Constraints dans le menu des propriétés, il est la meilleure méthode!

Questions connexes