Question

J'ai une configuration de table assez standard dans une application actuelle utilisant le .FILET XSD DataSet et TableAdapter caractéristiques.Mon contracts Le tableau comprend des informations contractuelles standard, avec une colonne pour les primary department.Cette colonne est un clé étrangère à mon Departments table, où je stocke les bases department name, id, notes.Tout cela est configuré et fonctionne dans mon serveur SQL.

Lorsque j'utilise l'outil XSD, je peux faire glisser les deux tables en même temps et il détecte/crée automatiquement la clé étrangère que j'ai entre ces deux tables.Cela fonctionne très bien lorsque je suis sur ma page principale et que je consulte les données du contrat.

Cependant, lorsque je vais sur ma page d'administration pour modifier les données du département, je fais généralement 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 indiquant qu'il y a une référence de clé étrangère cassée ici, je suppose puisque je n'ai pas le Contract DataTable rempli.

Comment puis-je résoudre ce problème ?Je sais que je peux simplement supprimer la clé étrangère du XSD pour que les choses fonctionnent correctement, mais avoir un contrôle d'intégrité supplémentaire et faire correspondre le schéma XSD au schéma SQL dans la base de données est bien.

Était-ce utile?

La solution

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

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top