سؤال

لدي خدمة ويب تعتمد على WCF مستضافة في جهاز Windows Sever 2003. قاعدة البيانات هي Oracle 10G على Solaris. تستخدم خدمة الويب TransactionsCope على نطاق واسع ومعاملات ADO.NET في بعض الأماكن. تتضمن معظم المعاملات موردًا واحدًا فقط (مكالمات Proc Oracle متعددة). بعضها مكونان (MSMQ و Oracle Stored Proc). بالنظر إلى أن شبكة DTC يجب تمكينها على جهاز Windows. لقد بدأت خدمة MSDTC بالفعل. لا يوجد تدفق معاملات من عميل خدمة الويب إلى خدمة الويب. يبدو أنه يعمل بدون تمكين شبكة DTC ، لكنني أريد أن أكون متأكدًا.

المنصة هي .NET 2.0 SP1 + 3.0 (ل WCF). Oracle Driver هو ODP.NET V11.1.0.6

هل كانت مفيدة؟

المحلول

بلدي الشكر هو أن الشبكة DTC لا تحتاج إلى تمكين. الشرط الوحيد هو أن كل من خدمات MSDTC و OraclemtsRecoveryService قد بدأت. يمكنني عرض المعاملات التي تحدث باستخدام تطبيق لوحة Controler Component Services Dief Component Services.

نصائح أخرى

إذا كانت معاملات العميل لا تتدفق أو إذا لم تكن هناك موارد دائمة متعددة ، فلن يتم الترويج لمدير المعاملات إلى المعاملة الموزعة.

يمكنك التحقق من معرفات المعاملات عن طريق الوصول إلى خاصية معلومات المعاملات لفئة المعاملة.

هذا الفئة لديها خاصية الموزع. سيكون DistributedIdentifier Guid.Empty إذا لم تتم الترويج للمعاملة إلى معاملة موزعة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top