में कस्टम संस्कृति बनाएं I App_GlobalResources फ़ोल्डर में "shopping.en-sg.resx" नामक सिंगापुर अंग्रेज़ी (एन-एसजी) के लिए संसाधन फ़ाइल बनाना चाहते हैं।ASP.NET
मुझे संकलन के दौरान त्रुटि मिलती है।
त्रुटि 1 नाम स्थान 'संसाधन' पहले से ही 'खरीदारी' सी के लिए एक परिभाषा में शामिल हैं: \ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727 \ अस्थाई ASP.NET Files \ वेब \ 2cd6afe9 \ 737b0a13 \ App_GlobalResources.vomuzavz.1.cs 26
गूगल खोज के बाद, मैं पता चलता है कि "en-sg" एक डिफ़ॉल्ट संस्कृति नहीं है और मैं इसके लिए कस्टम संस्कृति का निर्माण करने की है। मुझे इसके विस्तृत कदम नहीं पता हैं।
संस्कृति बनाने और संकलन त्रुटि को हटाने के लिए मुझे क्या करना चाहिए? (संरक्षित ओवरराइड शून्य InitializeCulture())
मैं MSDN में उदाहरण का अनुसरण, एक फ़ाइल "shopping.x-en-अमेरिका-sample.resx" कहा जाता है बना सकते हैं और BasePage के समारोह में निम्न कोड डाल:
CultureAndRegionInfoBuilder cib = null;
cib = new CultureAndRegionInfoBuilder(
"x-en-US-sample", CultureAndRegionModifiers.None);
CultureInfo ci = new CultureInfo("en-US");
cib.LoadDataFromCultureInfo(ci);
RegionInfo ri = new RegionInfo("US");
cib.LoadDataFromRegionInfo(ri);
cib.Register();
ci = new CultureInfo("x-en-US-sample");
हालांकि, संकलन त्रुटि अभी भी मौजूद है।
UPDATED:
आप आसानी से एक खाली वेबसाइट और दो फ़ाइलों "shopping.en-sg.resx" और "shopping.resx" app_globalresources फ़ोल्डर में बनाने के द्वारा समस्या को पुन: कर सकते हैं।
त्रुटि से बचने के लिए मुझे यह कोड कहां रखना चाहिए? – Billy
यह कोड केवल उस मशीन पर चलाने की आवश्यकता है जहां आपको अतिरिक्त संस्कृति की आवश्यकता है। हो सकता है कि आप त्रुटि प्राप्त कर रहे हैं क्योंकि यह पहले से मौजूद है? –
कोड को global.asax में रखें? यदि मैं "en-sg" से "en-us" बदलता हूं, तो यह ठीक है। मैं सिर्फ कोड का एक टुकड़ा चाहता हूं जिसे मैं इसे कहीं और रख सकता हूं और उसके बाद मैं shopping.en-sg.resx – Billy