L'accès au réseau pour la distribution de Gestionnaire de Transactions (MSDTC) a été désactivé

erreur:

D'accès au réseau pour la distribution de Gestionnaire de Transactions (MSDTC) a été désactivé. S'il vous plaît activer DTC pour l'accès au réseau dans la configuration de la sécurité pour MSDTC à l'aide de l'outil d'Administration Services de Composants.

using (System.Transactions.TransactionScope ts = new System.Transactions.TransactionScope())   
11                 {   
12                     try  
13                     {   
14                         foreach (DataRow row in this.dt1.Rows)   
15                         {   
16                             int titleId = int.Parse(row["titleId"].ToString());   
17                             string fname = row["fname"].ToString();   
18                             string lname = row["lname"].ToString();   
19   
20                             if (cmd.Parameters.Count > 0)   
21                                 cmd.Parameters.Clear();   
22   
23                             cmd.Parameters.AddWithValue("@titleId", titleId);   
24                             cmd.Parameters.AddWithValue("@fname", fname);   
25                             cmd.Parameters.AddWithValue("@lname", lname);   
26                             cmd.ExecuteNonQuery();   
27   
28                         }   
29                         con.Close();   
30                         ts.Complete();   
31                     }   
32                     catch (Exception ex)   
33                     {   
34   
35                     }                       
36                 }   
37             }  
Double Possible: stackoverflow.com/questions/794364/...
Pourquoi utiliser le DTC s'est transaction locale ?
wow 6 ans déjà!, en plus de cela si vous utilisez async u besoin d'ajouter le "TransactionScopeAsyncFlowOption.Activé" comme dans l'aide (var trans = new TransactionScope((TransactionScopeAsyncFlowOption.Activé)))

OriginalL'auteur Nick Kahn | 2011-03-01