2009-06-29 8 views
10

एएसपीनेट साइट पर क्लाइंट विशिष्ट शब्दकोष के साथ स्थानीयकरण को कार्यान्वित करने के सर्वोत्तम तरीके पर कुछ सलाह ढूंढ रहे हैं जिसका उपयोग कई ग्राहकों द्वारा किया जाएगा।ग्राहक विशिष्ट शब्दकोष के लिए कस्टम संस्कृति?

उदाहरण के लिए साइट पर कौन से ग्राहक लॉग इन हैं और साथ ही भाषा वरीयता क्या है, इस पर निर्भर करता है कि किसी फ़ॉर्म पर लेबल अलग-अलग होना चाहिए।

तो प्रत्येक ग्राहक के लिए शब्दकोष/शब्दकोष का एक डिफ़ॉल्ट सेट होगा ... और फिर प्रत्येक क्लाइंट शब्दकोष/शब्दकोष का अनुवाद उन भाषाओं में किया जाएगा जिनकी उन्हें आवश्यकता है।

मैं प्रत्येक ग्राहक के लिए एक कस्टम संस्कृति बनाने और फिर एएसपीनेट और संसाधन फ़ाइलों में "अंतर्निर्मित" स्थानीयकरण सुविधाओं का उपयोग करने के बारे में सोच रहा था।

तो मेरे पास एक डिफ़ॉल्ट संस्कृति हो सकती है ... और उसके बाद क्लाइंट विशिष्ट संस्कृतियां ... और फिर क्लाइंट विशिष्ट संस्कृतियों को अन्य भाषाओं में अनुवादित किया जा सकता है।

en-US

de-डे

en-US-client1

en-US-client2

de-डे-client1

de-डे-client2

क्या यह पागल लगता है? मेरे लिए एक काफी अच्छा दृष्टिकोण की तरह लगता है ... लेकिन शायद एक हैक का थोड़ा सा ... तो मैं किसी भी बेहतर विचार का स्वागत करता हूँ?

मदद के लिए सभी को धन्यवाद!

+1

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

+0

मैंने ठीक वही किया जो ऊपर वर्णित था और यह बहुत अच्छा काम करता था। हम डेटाबेस टेबल के साथ संसाधन फ़ाइलों को प्रतिस्थापित करने के लिए अपने स्वयं के प्रदाता को लिखने के लिए गए थे क्योंकि आवश्यकताओं में से एक अंत उपयोगकर्ताओं को स्क्रीन के माध्यम से अनुवाद अपडेट करने में सक्षम होना था। बाद में एमएसडीएन पर डॉक्टर के बहुत सारे। – Todd

+0

आपने किस संस्कृति को "उपयोग" करने के लिए निर्दिष्ट किया है। मैं वही करना चाहता हूं, और Web.config में एक कस्टम संस्कृति निर्दिष्ट करता हूं लेकिन कोई भाग्य नहीं। मैंने यहां एक समान प्रश्न पोस्ट किया है: http://stackoverflow.com/questions/17217098/how-to-specify-a-custom-culture –

उत्तर

5

वास्तव में यह नहीं है, यह एक आम दृष्टिकोण है - मैंने इसे ई-कॉमर्स स्टोर्स के लिए कुछ बार देखा है जहां केंद्रीय स्टोर एक सामान्य सफेद लेबल है।

यह क्योंकि ASP.NET टिन से बाहर नहीं बल्कि आप उस से viewstate ट्रिमिंग, हर रफ़ू अनुरोध में पाठ की अपनी खुद की सेटिंग रोल करने की तुलना में स्थानीयकरण का समर्थन, कैशिंग आदि

प्रबंध और भूल नहीं है अच्छा है संस्कृति विशिष्ट जानकारी संसाधन फ़ाइल में नहीं है, it can come from a database too

2

हाँ, यह थोड़ा पागल है। लेकिन बहुत थोड़ा। एएसपी.नेट केवल भाषा और लोकेल तक स्थानीयकरण का समर्थन करेगा। मैं अनुशंसा करता हूं कि आप इसे उन क्षेत्रों के लिए करें जो किसी भी ग्राहक के लिए विशिष्ट नहीं हैं।

क्लाइंट-विशिष्ट लेबल के लिए, मैं अनुशंसा करता हूं कि आप अपनी संसाधन फ़ाइल से सही टेक्स्ट का चयन करने के लिए कोड-बैक के साथ उपयोगकर्ता नियंत्रण के उपयोग को गठबंधन करें (यदि आप वीएस का उपयोग कर रहे हैं, तो इसके अंतर्निहित समर्थन का उपयोग करें संसाधनों के प्रबंधन के लिए), और शायद एएसपी.नेट कैश (शायद @ कैश निर्देश) के साथ यदि आपके पास क्लाइंट-विशिष्ट टेक्स्ट का चयन करने के लिए किस विशेषताओं का उपयोग किया जा सकता है, तो सीमित संयोजन हैं।

आपके दृष्टिकोण थोड़ा कम मैन्युअल काम की तरह लग सकते हैं, लेकिन उन समस्याओं का कारण बनने की संभावना अधिक है जो डीबग करने के लिए अधिक से अधिक समय लेते हैं, साथ ही साथ .NET की भविष्य की रिलीज में स्थिरता के साथ चुनौतियों का सामना करना पड़ता है।

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