2009-09-30 11 views
1

Avoir un peu de problème avec le bloc d'application, en essayant de trouver une manière logique d'exécuter 3 SP dans une transaction.Transaction des données d'application d'entreprise transaction

Jusqu'à présent, j'ai:

SqlDatabase db = new SqlDatabase(this.ConnectionString); 
DbCommand insertMessageDetailCommand = db.GetStoredProcCommand("InsertMessageDetail"); 

Vous cherchez une bonne ... de ce point les choses deviennent un peu confus, il est évident que je dois ajouter les paramètres de SP que je fais par:

db.AddInParameter....... 

Ce qui me trouble est - notez que vous ajoutez les paramètres - à l'objet SqlDatabase.

Alors ... Tout cela est bien et bien même avec le premier élément de la transaction:

DbTransaction transaction = connection.BeginTransaction(); 
       try 
       { 
        //INSERT Message Info 
        int PK = Convert.ToInt32(db.ExecuteScalar(insertMessageDetailCommand, transaction)); 

Sauf que maintenant je dois appeler un nouveau SP, avec ses propres paramètres. Dois-je effacer les paramètres de l'objet db?

La seule façon dont je vois cela fonctionner est si je crée encore un autre objet db, mais sûrement cela ne serait pas compatible avec la même transaction?

S'il vous plaît aider

Répondre

0

Si vous vous demandez, je pense que j'ai tout compris, remarquez comment l'objet db nécessite un paramètre d'objet de commande. Il va déléguer le param à l'opération requise. Assez utile si vous y pensez.

Questions connexes