تحديث 2998527 تؤدي عمليات البحث عن التعليمات البرمجية غير صحيحة في التواريخ السابقة باستخدام TimeZoneInfo في.NET Framework

هام: تمت ترجمة هذه المقالة باستخدام برامج مايكروسوفت للترجمة الآلية ومن المحتمل ان يتم تحريرها او تدقيقها بعد ذلك من خلال تكنولوجيا منصة مجموعات الترجمة(CTF) او من خلال مترجم بشري. تقدم لك شركة مايكروسوفت هذه المقالات المترجمة بشكل آلي او بالترجمة البشرية او بعد تحريرها وتدقيقها من قبل مجموعات الترجمة حتى تمكنكم من الوصول إلى جميع المقالات الموجودة في قواعد المعرفة لديها بلغات مختلفة. إلا أن المقالات المترجمة قد تحتوي على أخطاء في المفردات او بناء الجمل او النحو. وعليه، فإن شركة مايكروسوفت ليست مسؤولة عن اية أخطاء او عدم دقة في الترجمة او أية أضرار قد تحدث نتيجة أخطاء في ترجمة محتويات النص او استخدامه من قبل العملاء.

اضغط هنا لرابط المقالة باللغة الانجليزية3012229
الأعراض
بعد 26 تشرين الأول/أكتوبر 2014، تحديث التطبيقات التي تتم استضافتها على الأنظمة التي تحتوي على المنطقة الزمنية الروسية عام 2014 في أيلول/سبتمبر (2998527 كيلو بايت) المثبتة والتي يستخدمها Microsoft.NET Framework قد حساب الوقت بشكل غير صحيح عند استخدام فئة TimeZoneInfo .

تحدث هذه المشكلة في المناطق الزمنية التالية:

  • (UTC 04:30). كاراكاس
  • (UTC + 01:00) ويندهوك
  • (UTC + 02:00) كالينينغراد (RTZ 1)
  • (UTC + 02:00) طرابلس
  • (UTC + 03:00) مينسك
  • (UTC + 03:00) موسكو، سان بطرسبرغ، فولغوغراد (RTZ 2)
  • (UTC + 05:00) إكاترينبرج (RTZ 4)
  • (UTC + 06:00) نوفوسيبيرسك (RTZ 5)
  • (UTC + 07:00) كراسنويارسك (RTZ 6)
  • (UTC + 08:00) إيركوتسك (RTZ 7)
  • (UTC + 09:00) ياكوتسك (RTZ 8)
  • (UTC + 10:00) ماغادان
  • (UTC + 10:00) فلاديفوستوك، ماغادان (RTZ 9)
  • (UTC + 13:00) ساموا
السبب
تحدث هذه المشكلة نظراً لحدوث تغيير في إزاحة المنطقة الزمنية الأساسية يقطع أية تعليمات برمجية في المناطق الزمنية المتأثرة إذا التعليمات البرمجية هذا البحث عن التواريخ السابقة باستخدام TimeZoneInfo في.NET Framework. وهذا لأن.NET Framework لا تعقب التغييرات على أساس سنوي في الإزاحة الأساسية.

تم الكشف عن هذه المشكلة عن طريق التغييرات الأخيرة للمناطق الزمنية الروسية الموضحة في مقالة "قاعدة معارف Microsoft" 2998527.

تجاهل.NET Framework إزاحة UTC التي تم تعيينها في قاعدة ضبط داخلي في وقت سابق. بدلاً من ذلك، استخدام إزاحة UTC الأساسية في بعض الحسابات. .NET Framework أيضا تجاهل قواعد الضبط التي ليس لها انتقالات التوقيت الصيفي.
تصريح
وقد تم حل هذه المسألة ليس فقط في الأكثر مؤخرا إصدار من.NET Framework، ولكن أيضا في مقالات "قاعدة المعارف" التالية:

معرفالعنوانالهدفمخصص 01مقالة قاعدة المعارف
1040166 [4.5.x] المنطقة الزمنية الروسية تأثير التغييرات على.NET.NET framework 4.5/4.5.1/4.5.21411-الموارد البشرية3011110
1065448 المنطقة الزمنية الروسية [3.5] تأثير التغييرات على.NET.NET framework 3.5 SP11411-الموارد البشرية3013380
1065447 المنطقة الزمنية الروسية [4.0] تأثير التغييرات على.NET.NET framework 41411-الموارد البشرية3012132
1104556 تحديث TZ الروسية [4.0] يرمي InvalidOperationException.NET framework 41502-الموارد البشرية3031985
1104557 فشل الاختبارات الوظيفية التحديث TZ الروسية [3.5].NET framework 3.5 SP11502-الموارد البشرية3031989
1118018 [4.0] المسائل TimeZoneInfo رو على Server 2003 SP2.NET framework 4الموارد البشرية-15043057756
1083122 DTS: [4.5.2] نتائج Incorrect عند تسلسل/دو-سيرياليزينج التاريخ والوقت.NET framework 4.5/4.5.1/4.5.21502-الموارد البشرية3026376
1083123 DTS: نتائج غير صحيحة [4.0] عند تسلسل/دو-سيرياليزينج التاريخ والوقت.NET framework 41502-الموارد البشرية3031985
1087142 DTS: نتائج غير صحيحة [3.5] عند تسلسل/دو-سيرياليزينج التاريخ والوقت.NET framework 3.5 SP11502-الموارد البشرية3031989
1083122 عند الطلب: KB3018511-Win8.1RTM/Win2K12R2RTM/WinRT8.1RTM-الموائد المستديرة 4.5.1/4.5.2 الحزب الوطني TZ الروسية-Part2-.NET framework 4.5/4.5.1/4.5.2عند الطلب3018511

معلومات أخرى
خذ بعين الاعتبار C# مثال التعليمات البرمجية التالية:

  TimeZoneInfo tz = TimeZoneInfo.FindSystemTimeZoneById("Russian Standard Time");  DateTime dt = TimeZoneInfo.ConvertTimeFromUtc(new DateTime(2013, 6, 1), tz);  Console.WriteLine(dt);
على سبيل المثال، قبل تطبيق التحديث KB 2998527، هذه التعليمات البرمجية بشكل صحيح بإرجاع التاريخ والوقت كتاريخ 1 حزيران/يونيه 2013 الساعة 04:00. بعد تطبيق التحديث، التعليمات البرمجية بشكل غير صحيح بإرجاع التاريخ والوقت كتاريخ 1 حزيران/يونيه 2013 الساعة 03:00.
إصلاح عاجل

تحذير: تمت ترجمة هذه المقالة تلقائيًا

خصائص

رقم الموضوع: 3012229 - آخر مراجعة: 06/20/2016 06:20:00 - المراجعة: 3.0

Microsoft .NET Framework 4.6, Microsoft .NET Framework 4.5.2, Microsoft .NET Framework 4.5.1, Microsoft .NET Framework 4.5, Microsoft .NET Framework 4.0, Microsoft .NET Framework 3.5, .NET Core 5.0

  • kbmt KB3012229 KbMtar
تعليقات