إيجاد و استخدام الموارد لثقافة محددة

يوفر وقت تشغيل اللغة العامة دعم استرداد الموارد الخاصة بالثقافة التي يتم حزمها و نشرها في التجميعات التابعة . التجميعات التابعة ستحتوي فقط على ملفات الموارد أو الموارد غير المحكمة مثل ملفات .gif. و هي لا تحتوي علي أية تعليمات برمجية تنفيذية.

في طراز النشر للتجميعات التابعة، عليك إنشاء تطبيق بتجميع افتراضي واحد (و هو التجميع الرئيسي) و العديد من التجميعات التابعة. يجب حزم الموارد للتجميع الافتراضي أو التجميع المحايد مع التجميع الرئيسي و إنشاء تجميع تابع منفصل لكل لغة يعتمدها التطبيق الخاص بك. و لأن التجميعات التابعة ليست جزءًا من التجميع الرئيسي, يمكنك بسهولة استبدال أو تحديث الموارد المقابلة إلى ثقافة محددة دون استبدال التجميع الرئيسي الخاص بالتطبيق.

الفئة ResourceManager توفر إمكانية الوصول إلى الموارد الخاصة بالثقافة في تشغيل الوقت و تتحكم في طريقة استرداد التطبيق للموارد باستخدام عملية الرجوع للمورد البديل. لمزيد من المعلومات، راجع الموضوع الفرعي "عملية الرجوع للمورد الاحتياطي" في الموضوع حزم و نشر الموارد.

يحدد الكائن ResourceManager الموارد المراد استردادها استناداً إلى خاصية CurrentUICulture الخاصة بمؤشر الترابط الحالي. على سبيل المثال، إذا تم تحويل تطبيق برمجياً بالموارد الافتراضية للغة الإنجليزية في التجميع الرئيسي و اثنين من التجميعات التابعة التي تحتوي على موارد للفرنسية و موارد اللغة الألمانية و تم تعيين الخاصية CurrentUICulture إلى "de" ، يقوم الكائن ResourceManager باسترداد الموارد الألمانية.

الخاصية CurrentUICulture يمكن تعيينها بعدة طرق. يجب أن تكون على علم طريقة تعيين هذه الخاصية تؤثر على كيف يقوم ResourceManager باسترداد الموارد استناداً إلى الثقافة:

  • الخاصية CurrentUICulture يمكن تعيينها إلى ثقافة معينة في التعليمات البرمجية الخاصة بالتطبيق. عندما يقوم التطبيق بتعيين هذه الخاصية بشكل واضح، فإنه يضمن أن الموارد لهذه الثقافة يتم استردادها دائماً، بغض النظر عن لغة المستعرض أو نظام التشغيل الخاص بالمستخدم. خذ بعين الاعتبار أحد التطبيقات، يتم تحويله برمجياً مع موارد اللغة الإنجليزية الافتراضية و اثنين من التجميعات التابعة تحتوي على موارد لموارد اللغة الفرنسية و اللغة الألمانية. إذا كانت الخاصية CurrentUICulture معينة إلى "de" ، يقوم الكائن ResourceManager دائماً باسترداد الموارد الألمانية، حتى إذا قام المستخدم بتعيين لغة النظام لنظام التشغيل إلى الفرنسية. تأكد من أن هذا هو السلوك المطلوب قبل قيام التطبيق بتعيين هذه الخاصية بشكل صريح.

    ملاحظة في تطبيقات ASP.NET، يكون من الضروري تعيين CurrentUICulture بشكل صريح لأن من غير المحتمل أن الإعداد على الخادم سيطابق طلبات العميل الواردة.

  • يتم تعيين الخاصية CurrentUICulture ضمنيًا إذا قام تطبيق بتحديد الإعداد CurrentUICulture. إذا لم يقم التطبيق بتعيين هذه الخاصية بوضوح، يتم تعيينها بواسطة الدالة GetUserDefaultUILanguage على منتجات Windows 2000 و Windows XP ذات واجهة المستخدم المتعددة اللغات (MUI) التي يمكن للمستخدم تعيين اللغة الافتراضية الخاصة بها. إذا لم يتم تحديد لغة واجهة المستخدم من قبل المستخدم، يتم تعيينها بواسطة لغة النظام المثبتة، و هي لغة موارد نظام التشغيل.

    ملاحظة   إذا كان التطبيق يستند إلى ويب, فيمكنه تعيين CurrentUICulture بشكل صريح إلى لغة القبول الخاصة بمستعرض المستخدم.

للحصول على أمثلة على تعيين الخاصية CurrentUICulture ، راجع استخدام خاصية CurrentUICulture.

لمزيد من المعلومات حول استرداد الموارد لثقافة معينة، راجع استرداد الموارد في التجميعات التابعة و الموارد في تطبيقات ASP.NET .

راجع أيضًا:

المبادئ

الموارد في التطبيقات

موارد أخرى

الترميز و الترجمة