2009-08-15 17 views
10

मुझे कुछ बाइट रूपांतरणों और मेरे कुछ अनुप्रयोगों में से कुछ में मेरी गणना के साथ कोई समस्या है। मैं इसे विंडोज़ में इतालवी संस्कृति सेटिंग चलाने वाले व्यक्ति को योगदान देने में सक्षम था। तो मेरा सवाल है: मेरे आवेदन चलाने वाले किसी भी कंप्यूटर पर "एन-यूएस" के लिए सबसे अच्छा तरीका क्या है। मेरे पास नीचे एक कोड नमूना है, लेकिन मुझे यकीन नहीं है कि मेरे द्वारा उपयोग किए जाने वाले किसी भी थ्रेड को विरासत में मिलेगा।मैं पूरे आवेदन के लिए स्थानीयकरण संस्कृति को अमेरिका में कैसे मजबूर कर सकता हूं

[STAThread] 
static void Main() 
{ 
    System.Threading.Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("en-US"); 
    System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-US"); 

    ... 
} 
+0

यह: "मुझे कुछ बाइट रूपांतरणों के साथ कोई समस्या है" संस्कृति सेटिंग्स के साथ कुछ भी नहीं करना चाहिए। समस्या रूपांतरणों में है, इस तथ्य में नहीं कि एक गैर-अमेरिकी संस्कृति का चयन किया गया है। –

उत्तर

9

आपका कोड वर्तमान धागे की संस्कृति सेट करेगा, लेकिन बनाए गए किसी भी नए धागे में इस संस्कृति को विरासत में नहीं मिलेगा। आपको उस संस्कृति को स्थापित करना होगा जिसकी आपको आवश्यकता है। (मुझे विश्वास है कि किसी भी नए सूत्र स्थापित विंडोज संस्कृति के साथ बनाया जाएगा, लेकिन मैं उस पर गलत साबित करने के लिए तैयार कर रहा हूँ।)

यह इस पोस्ट में जवाब है: Is there a way of setting culture for a whole application? All current threads and new threads?

व्यक्तिगत रूप से, मुझे लगता है यह व्यवहार कष्टप्रद है, लेकिन यह वही तरीका है।

+1

दरअसल यह अच्छी समझ में आता है। एएसपी.नेट के बारे में सोचें, जहां किसी साइट पर पहुंचने वाले एकाधिक उपयोगकर्ता समय-समय पर किसी भी बिंदु पर अलग-अलग संस्कृतियों को सक्रिय कर सकते हैं। जब संस्कृति को मेल नहीं किया जा सकता है तो आपको फॉलबैक होने से शुरू करने के लिए आधार रेखा की आवश्यकता होती है। –

+0

@ रिक: यह एक उचित बिंदु है। मुझे एएसपी.नेट में कोई अनुभव नहीं है, इसलिए ऐसा कुछ नहीं है जिसे मैंने पहले माना है। – Andy

12

आपके द्वारा वर्णित समस्या InvariantCulture मौजूद है। अपने आवेदन की संस्कृति को बदलने के बजाय, आपको अदृश्य संस्कृति के साथ अपने डेटा-दृश्य डेटा मैनिपुलेशन/दृढ़ता को देखना चाहिए और फिर उपयोगकर्ता की संस्कृति को निर्धारित करना चाहिए कि मूल्यों को कैसे प्रदान किया जाता है।

संबंधित मुद्दे

 संबंधित मुद्दे