J'utilise un message personnalisé héritant du System.Servicemodel.Channels.Message.
Mon message personnalisé obtient la collection IEnumerable tirée d'une base de données.
Le service WCF est transactionnel (qui a déjà été testé).Écriture de message personnalisé WCF avec la prise en charge des transactions
MS-DTC est activé.
Le problème est que lorsque les OnWriteBodyContents vides (écrivain de XmlDictionaryWriter) de protected override méthode est exécutée au message personnalisé, il n'y a pas de transaction.
Le System.Transactions.Transaction.Current est null. lors de l'exécution du service, le flux de transaction fonctionne correctement, mais lorsque le message est écrit par le mécanisme WCF, il semble qu'il soit sorti d'une transaction qui provoque l'exécution de la commande DB (extraction des données) sans transaction.
Veuillez noter que si je passe simple tableau au lieu de IEnumerable l'action DB est exécutée sous transaction, mais je veux qu'il soit exécuté parallèlement à l'écriture de la réponse.
Des idées s'il vous plaît, pourquoi la transaction est manquante et que peut-on faire pour l'activer?
merci beaucoup!
Tamir.
vous êtes génial! Merci pour ça. mais, comment pourrais-je résoudre ce genre de problèmes avant fx 4.0? – Tamir
En fait, DepedentTransaction existe depuis l'introduction de System.Transactions, c'est-à-dire .NET 2.0 – VinayC
oui, désolé, mon mauvais. n'a pas remarqué ça .. :-) – Tamir