0 votes

Mise à jour de plusieurs tables avec LinqToSql en une seule unité de travail

Tableau 1 : int ID-a(pk)

Tableau 2 : int ID-a(pk), int ID-b(pk)

Tableau 3 : int ID-b(pk), chaîne C

J'ai les données à insérer dans le tableau 1. Mais je n'ai pas l'ID-a, qui est généré automatiquement. J'ai plusieurs chaînes C à insérer dans le tableau 3.

J'essaie d'insérer une ligne dans le tableau 1, d'obtenir l'ID-a à insérer dans le tableau 2 ainsi que l'ID-b qui est généré automatiquement dans le tableau 3 lorsque je soumets chaque chaîne C, le tout en une seule soumission à la base de données.

Actuellement, j'appelle dc.SubmitChanges deux fois dans le même appel. Est-il efficace d'avoir à soumettre les changements deux fois sur le même DataContext ou cela peut-il être combiné davantage ?

1voto

James Black Points 26183

Pouvez-vous simplement écrire une procédure stockée pour placer les informations dans les bonnes tables, et faire en sorte que linq accède à la procédure stockée.

Ce serait probablement la méthode la plus simple, IMO.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X