Je me bats contre un concepteur de DataSet VS2008 récalcitrant, semble-t-il. J'ai essayé de faire ce qui semble être une simple solution de jeu de données à 2 tables, où une table est simplement la signification textuelle d'une valeur entière stockée dans l'autre table. conception de données de base 101.Qu'est-il arrivé aux commandes Update et Delete de ma TableAdapter?
Table1
CharField1
CharField2
IntForeignKeyField1
etc
Table2
IntPrimaryKey1
ValueForKeyField
Cela n'affecte pas vraiment le problème que j'ai, je ne crois pas, comme je ne suis pas envie de faire quoi que ce soit, mais lire les valeurs de la deuxième table je peux choisissez-les dans un DataGridViewComboBoxColumn dans le client - je ne les éditerai jamais sur le client. Mais, je m'égare. Puisqu'il vit dans un service web, et je voulais un jeu de données fortement typé livré aux clients de ce service web, j'ai décidé d'utiliser le DataSet Designer pour construire les TableAdapters et toute la plomberie, pensant qu'il pourrait être moins travail et plus facile à maintenir. J'ai donc créé les jolies boîtes et édité les instructions select, en demandant au concepteur de créer toutes les commandes Insérer, Mettre à jour et Supprimer pour l'adaptateur de table à utiliser. Il a heureusement obligé, m'informant que tout a été fait comme je l'ai demandé.
Lorsque j'ai essayé d'utiliser l'instruction Update, cependant, j'ai reçu une erreur indiquant qu'il n'y avait pas d'instruction Update valide! Après une recherche infructueuse de personnes ayant des problèmes similaires sur le web, j'ai creusé le XML pour l'ensemble de données. Effectivement, pas d'instruction Update, et pas d'instruction Delete non plus.
J'ai essayé de supprimer complètement et de recréer le DataSet du projet, avec les mêmes résultats. Aucune instruction Update ou Delete n'a été créée, même si elle a été signalée comme terminée.
J'ai fini par créer l'instruction Update XML à la main, en inspectant un autre ensemble de données conçu à partir d'un autre projet, de sorte que le service Web fonctionne maintenant. Cependant, je ne crois pas du tout que mes changements dureraient grâce à une modification initiée par le concepteur, et je suis perplexe quant à savoir pourquoi cela ne fonctionne pas. Des idées?
Merci pour tous les commentaires, Dave
De l'absence totale de commentaires, je suppose que cela n'a pas eu à quelqu'un d'autre, donc j'avoir un vrai bug ou problème dans ma mise en œuvre de VS2008. Génial. Et j'ai aussi reçu un insigne «tumbleweed» pour le privilège. – DaveN59