2010-02-17 11 views
12

मुझे ओएस के इस्तेमाल किए बिना, एनईटी 3.5 द्वारा समर्थित संस्कृतियों की एक सूची की आवश्यकता है। यह प्राप्त करने के लिए काफी संघर्ष लगता है, हालांकि मुझे यकीन नहीं है कि क्यों!.NET 3.5 में CultureInfo क्लास द्वारा कौन सी संस्कृतियों का समर्थन किया जाता है?

संपादित करें: अरघ, मुझे नहीं पता था कि यह ओएस पर निर्भर है, जो दस्तावेज़ीकरण की कमी की व्याख्या करेगा। मैक/लिनक्स ओएस द्वारा समर्थित क्या पर कोई विचार है?

धन्यवाद :)

+0

, तुम क्यों सूची की ज़रूरत है? – OregonGhost

+0

बस काम करने के लिए क्या लैंगुग हमें कस्टम संस्कृतियां बनाना होगा और हम 'बॉक्स से बाहर' का उपयोग कैसे कर सकते हैं। उदाहरण के लिए, मुझे हाल ही में पूछा गया था कि क्या वेल्श समर्थित है या नहीं। –

+0

यह मत भूलना कि संस्कृतिइन्फो आपूर्ति क्या मूल रूप से केवल कुछ तारों (तीन भाषाओं में नाम, आईएसओ कोड, मुद्रा नाम) और दिनांक और संख्या स्वरूपण है। उत्तरार्द्ध को अधिकांश मामलों में विशेष संस्कृतियों की आवश्यकता नहीं होती है, क्योंकि वे अधिकतर संबंधित संस्कृतियों के लिए समान हैं (यानी अधिकांश यूरोपीय देशों में समान संख्या स्वरूपण होता है)। तो सवाल यह है कि, क्या आपको वेल्श संस्कृति की आवश्यकता है, या क्या आपको सिर्फ वेल्श अनुवाद की आवश्यकता है? वैसे, जबकि यह आपकी सामान्य समस्या का समाधान नहीं करेगा, संस्कृति-विज्ञान में एक विशिष्ट संस्कृति के रूप में साइ-जीबी उपलब्ध है। वेल्श समर्थन मांगने वाले किसी व्यक्ति के पास ... – OregonGhost

उत्तर

8

दुर्भाग्य से, यह ओएस निर्भर है। प्रति ओएस डिफ़ॉल्ट भाषा समर्थन के लिए here देखें।

ध्यान दें, CultureInfo documentation चेतावनी देते हैं:

Windows संस्करण या सर्विस पैक्स उपलब्ध संस्कृतियों बदल सकते हैं।

एएसपी.नेट में, यह ब्राउज़र है जो ओएस बनाम महत्वपूर्ण है। यह आपको बता सकता है कि उपयोगकर्ता Accept-Language (धारा 14.4) अनुरोध शीर्षलेख के माध्यम से कौन सी भाषा पसंद करता है। यदि आप अपने ऐप की globalization कॉन्फ़िगरेशन सक्षम करने के लिए कॉन्फ़िगर करें BientBasedCulture = "true", ASP.NET स्वचालित रूप से ब्राउज़र द्वारा प्रदान किए गए मान पर यूआईसील्चर और संस्कृति को सेट करने का प्रयास करेगा। वैकल्पिक रूप से, आप Request.UserLanguages संपत्ति का निरीक्षण करके स्वयं भी संस्कृति सेट कर सकते हैं:

दुर्भाग्य से, वहाँ कोई रास्ता नहीं एक ओएस या ब्राउज़र से संभव भाषाओं की एक विस्तृत सूची उत्पन्न करने के लिए है। सबसे नज़दीकी बात IANA Language Subtag Registry है। यह RFC 4646 में वर्णित भाषा रजिस्ट्री है - दस्तावेज़ जो .NET के CultureInfo टैग को परिभाषित करता है।

ध्यान रखें, Request.UserLanguages ​​में भाषा टैग मान्य होने की गारंटी नहीं है। आप उन्हें जांचना चाहेंगे। HTTP 1.1 language tags के लिए पुरानी अनुशंसा का उपयोग करता है और किसी को भी भाषा शीर्षलेख में गंदगी भेजने से रोक नहीं रहा है।

+0

यदि यह एक एएसपी.NET ऐप है, तो मुझे लगता है कि आपका मतलब है कि यह साइट होस्ट करने वाले सर्वर के ओएस पर आधारित है? –

+0

एएसपी.नेट में, ब्राउज़र पसंदीदा भाषा प्रदान करता है। मैं प्रासंगिक संसाधनों के साथ अपना उत्तर अपडेट करूंगा। –

1

कस्टम संस्कृतियों को बनाना संभव है, लेकिन डिफ़ॉल्ट श्रेणी उन ऑपरेटिंग सिस्टम द्वारा प्रदान की जाने वाली संस्कृतियों का समर्थन करती है जो आप चल रहे हैं। संस्कृतियों का एक संदर्भ है supported by default on MSDN

+0

यदि यह एक एएसपी.NET ऐप है, तो मुझे लगता है कि आपका मतलब है कि यह साइट होस्ट करने वाले सर्वर के ओएस पर आधारित है? –

+0

@ फियोना 'फ्रैड तो - क्लाइंट के लिए उस संस्कृति से कनेक्ट होना संभव होगा जो सर्वर समझ में नहीं आता है (शायद "एन-स्कूज़") –

0

मैंने अभी संस्कृति एक्सप्लोरर 2.0 के साथ जांच की है, विंडोज-केवल संस्कृतियों और स्थापित संस्कृतियों के साथ-साथ .NET Framework संस्कृतियों (जो, कम से कम मेरे सिस्टम पर केवल एक अंतर है) केवल भाषा संस्कृतियां शामिल हैं)। इन सभी को CultureInfo क्लास (और RegionInfo, NumberFormatInfo और इसी तरह) द्वारा समर्थित किया जाता है।

मैंने इसे मोनो (लिनक्स पर) पर भी चलाया, यह लगभग समान है, .NET Framework संस्कृतियों और विंडोज़-केवल संस्कृतियों के गायब होने के साथ ही, लेकिन विशिष्ट और तटस्थ संस्कृतियां हैं। RegionInfo.CurrencyNativeName हालांकि मेरे मोनो संस्करण में लागू नहीं किया गया है, इसलिए किसी भी संस्कृति का चयन करते समय यह दुर्घटनाग्रस्त हो जाता है।

दुर्भाग्य से, संस्कृति एक्सप्लोरर 2.0 वर्तमान में कहीं से भी उपलब्ध नहीं है (gotdotnet.com पर था), मैंने इसे कुछ समय पहले डाउनलोड किया था। यह ऐसी चीजों के लिए एक आसान उपकरण है। कुछ अभिलेखागार में आपको ढूंढने के लिए आपको भाग्य हो सकता है।

+0

http://www.microsoft.com/middleeast/arabicdev/ DevTools/VSdotNET/नमूने/संस्कृतिExplorer.aspx – erikkallen

+0

@erikkallen: यह टूल का पहला संस्करण है। इसमें सभी श्रेणियां नहीं हैं और केवल .NET Invariant देश, विशिष्ट भाषा संस्कृतियों का समर्थन करती हैं। मुझे संस्कृति एक्सप्लोरर 2.0 के लाइसेंस के बारे में पता नहीं है - शायद मैं इसे बाद में कोडप्लेक्स पर अपलोड कर सकता हूं। – OregonGhost

+2

मैंने संस्कृति एक्सप्लोरर 2.0 को अपनी सभी महिमा में [वेबाक मशीन] पर पाया (http://web.archive.org/web/20070218132812/http://www.gotdotnet.com/Community/UserSamples/Details.aspx?SampleGuid= b778ff2c-9142-4769-839a-094f51a6f9f4)! –

4

National Language Support (NLS) API Reference स्थानीय जानकारी सूचीबद्ध करता है और आपको ओएस का चयन करने की अनुमति देता है।

माइक्रोसॉफ्ट लोकेल बिल्डर विंडोज विस्टा और बाद में कस्टम लोकल बनाने के लिए एक उपकरण है।

ओएस के लिए कस्टम समेत समर्थित संस्कृतियों की एक सूची प्राप्त करें।

सी # उदाहरण के लिए,

System.Globalization.CultureInfo[] cultures = System.Globalization.CultureInfo.GetCultures(System.Globalization.CultureTypes.AllCultures); 
जिज्ञासा से बाहर
संबंधित मुद्दे