تخطي إلى المحتوى الرئيسي
الدعم
تسجيل الدخول باستخدام حساب Microsoft
تسجيل الدخول أو إنشاء حساب.
مرحباً،
تحديد استخدام حساب مختلف!
لديك حسابات متعددة
اختر الحساب الذي تريد تسجيل الدخول باستخدامه.

الأعراض

بعد تثبيت 2018 يوليو أمان.NET Framework ونوعية مجموعات التحديثات التي تنطبق على.NET Framework 4-6، 4.6.1، 4.6.2، 4.7، 4.7.1 و 4.7.2 على Windows 7 Service Pack 1 (SP1) أو Windows Server 2008 R2 SP1 أو Windows Server 2008 SP2، لاحظت وجود أخطاء في.NET تطبيق framework يفي بالمعايير التالية:

  • يستخدم التطبيق مثيلات الفئة System.Transaction.TransactionScope التي تم تمكين انسياب معاملة بتمرير TransactionScopeAsyncFlowOption.Enabled إلى المنشئ.

  • التطبيق بإجراء واحد أو أكثر من الاتصالات عن بعد أثناء إحدى هذه النطاقات حركة نشطة. في هذه الحالة، يتم استدعاء عن بعد استدعاء أي ينتقل عن طريق وكيل قبل أن تصل إلى كائن الملقم. تتضمن أمثلة المكالمات البعيدة المكالمات التي تم إجراؤها من خلال قنوات الاتصال عن بعد، مثل قنوات العميل التي تم تعريفها في مساحات الأسماء System.Runtime.Remoting.Channels والمكالمات إلى مجالات التطبيق الأخرى.

  • بعد الاتصال عن بعد، System.Transactions.Transaction.Current بإرجاع قيمة فارغة بدلاً من القيمة التي تم إرجاعها قبل استدعاء عن بعد.

الحل البديل

للتغلب على هذه المشكلة، جرب أي من الأساليب التالية:

  • لكل نطاق الحركة الذي يتيح تدفق الحركة، بتغيير التطبيق للتأكد من أن المكالمات البعيدة لم تحدث في أي مكان في التعليمات البرمجية التي يتم تشغيلها أثناء نطاق حركة نشطة. عند تحديد ما إذا كان نطاق حركة يحتوي على أي استدعاءات البعيدة، خذ بعين الاعتبار المبادئ التوجيهية التالية:

    • لا يتم استدعاء أسلوب ثابت استدعاء عن بعد.

    • لاستدعاء أسلوب مثيل كائن هدف، الاتصال البعيد فقط إذا كان الكائن الهدف وكيل غير ملحوظ.

    • لاستدعاء الدالة إنشائية، يتم الاتصال البعيد فقط إذا كان الكائن المركبات وكيل.

    ملاحظة:يمكنك دائماً استخدام أسلوب System.Runtime.Remoting.RemotingServices.IsTransparentProxy للتحقق من ما إذا كان كائن وكيل غير ملحوظ.

  • قم بتعطيل تدفق الحركة عن طريق إزالة وسيطة منشئ TransactionScopeAsyncFlowOption.Enabled

    تحذير

    هذا الحل من المحتمل أن تتسبب في حدوث أخطاء أخرى إذا تنفيذ أية عمليات "انتظار" عندما تنشط نطاق الحركة.

  • لم يتم تسلسل الخاصية Transaction.Current للاتصال عن بعد تلقائياً. يجب أن يتم تمريرها كمعلمة. إذا كان الاتصال عن بعد غير تمرر الحركة كمعلمة وعدم إجراء رد اتصال العميل أثناء الاتصال عن بعد، يمكنك إنشاء الاتصال عن بعد داخل كائن ترانساكتيونسكوبي جديد يستخدم TransactionScopeOptions.Suppress الخيار. داخل هذا منع نطاق الحركة، الخاصية Transaction.Current تحتوي على قيمة فارغة.

الحالة

نحن على علم بهذه المشكلة وتعمل حاليا على قرار.

هل تحتاج إلى مزيد من المساعدة؟

الخروج من الخيارات إضافية؟

استكشف مزايا الاشتراك، واستعرض الدورات التدريبية، وتعرف على كيفية تأمين جهازك، والمزيد.

تساعدك المجتمعات على طرح الأسئلة والإجابة عليها، وتقديم الملاحظات، وسماعها من الخبراء ذوي الاطلاع الواسع.

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

ما مدى رضاك عن جودة اللغة؟
ما الذي أثّر في تجربتك؟
بالضغط على "إرسال"، سيتم استخدام ملاحظاتك لتحسين منتجات Microsoft وخدماتها. سيتمكن مسؤول تكنولوجيا المعلومات لديك من جمع هذه البيانات. بيان الخصوصية.

نشكرك على ملاحظاتك!

×