मुझे एएसपी एमवीसी ऐप्स, को स्थानीयकृत करने के लिए सबसे अच्छी प्रैक्टिस में मदद की ज़रूरत है, मैंने देखा कि ऑक्साइट बेसकंट्रोलर में लोकलाइज नामक आधार विधि है, लेकिन क्या स्थानीयकरण दृश्य या नियंत्रक के लिए एक कार्य है? या मुझे resx फ़ाइलों/या डीबी टेबल का उपयोग करना चाहिए?एएसपी.नेट एमवीसी स्थानीयकरण सर्वोत्तम अभ्यास?
उत्तर
अपने खुद के एचटीएमएल सहायक बना सकते हैं और तरह <%= Html.Resource("Name") %>
विवरण इसका इस्तेमाल blog पोस्ट में कर रहे हैं।
बस इतना ही पता है कि पोस्ट इहर लिंक के पास अब एक लिंक है अद्यतन करें। देखें: http://blog.eworldui.net/post/2008/10/ASPNET-MVC-Simplified-Localization-via-ViewEngines.aspx –
अद्यतन लिंक या तो काम नहीं करता। :( – bradjive
Am पहले से ही एक समाधान इस के समान का उपयोग कर, लेकिन समाधान के इस प्रकार के प्रदर्शन के मामले में एक अतिरिक्त भूमि के ऊपर जोड़ने नहीं है – jsicary
यदि स्थानीयकरण की स्ट्रिंग दृश्य द्वारा उत्पन्न होती है (उदाहरण के लिए एक टेक्स्ट फ़ील्ड के सामने एक लेबल), तो इसका स्थानीयकरण दृश्य में होना चाहिए।
यदि स्ट्रिंग नियंत्रक द्वारा उत्पन्न होता है, तो इसका स्थानीयकरण भी वहां होना चाहिए।
इस उपलब्ध here
इस लेख के लिए अच्छा समाधान नहीं है MVC सही काम के लिए सही दृश्य का उपयोग कर के बारे में बहुत अधिक है स्थानीयकरण asp.net MVC के एप्लिकेशन
के सभी पहलुओं को शामिल किया गया। संसाधन फ़ाइल में सबकुछ डालना बेहद पेंटफुल है। छोटी चीजों के लिए संसाधन फ़ाइलों का उपयोग करना अच्छा होता है, लेकिन आपके विवरण पृष्ठों जैसे बड़े पृष्ठों के लिए, प्रत्येक संस्कृति में बहुत सारी सामग्री के साथ बेहतर होना बेहतर होता है। उदाहरण के लिए निम्न संरचना का उपयोग करना: ~/दृश्य/एन-यूएस/होम/इंडेक्स.एएसपीएक्स ~/व्यू/पीटी-बीआर/होम/इंडेक्स.एएसपीएक्स या यह संरचना: ~/दृश्य/होम/इंडेक्स.न -US.aspx ~/दृश्य/होम/Index.en-US.aspx
इसे कैसे करना के लिए ब्लॉग को पढ़ने: http://blog.oimae.com/2011/02/20/cultured-view-engine-for-mvc/
क्यों -1 इस जवाब पर कर रहे हैं [कई] (http: // afana। मुझे/पोस्ट/aspnet-MVC-internationalization.aspx) [सम्मानित] (http://www.hanselman.com/blog/GlobalizationInternationalizationAndLocalizationInASPNETMVC3JavaScriptAndJQueryPart1.aspx) [उदाहरण] (http://brianreiter.org/2011/03/23/ सरल-एएसपी-नेट-एमवीसी-वैश्वीकरण-साथ-सुन्दर-फॉलबैक /) इस पैटर्न के और जब यह इंगित किया गया है। यहां उत्तरदाता का एक बिंदु है: .resx में बड़ी टेक्स्ट सामग्री का प्रबंधन कुछ घर्षण जोड़ता है, और इसमें लेआउट या आकार हो सकता है । एक बड़े पैमाने पर शाब्दिक दृश्य पर प्रभाव यह एक मौलिक तालमेल, के रूप में लिंक में सचित्र सबसे खराब समाधान है – mcw0933
अब तक -।! कभी आप भाषाओं और स्थानों के बहुत भर में पैमाने पर करने की जरूरत है, यह एक बहुत बड़ी गड़बड़ हो जाता है और सुपर painfull है रखरखाव के लिए। सभी दृष्टिकोण रखने के लिए बेहतर दृष्टिकोण है स्थानीयकरण डीएफ में एफएफ, ऐप स्टार्ट पर आवश्यक सामग्री लोड करें (कुछ पेज पर अपडेट-कैश-बटन न भूलें) + तारों को संपादित करने के लिए कुछ प्रकार के ब्राउज़र-इंटरफेस/फ्रंटएंड का उपयोग करें। साथ ही, यह प्रणाली अनुवादकों की एक टीम और "सामग्री-रखरखाव करने वालों" में अच्छी तरह से स्केल करती है (इसके बजाय आपके दक्षिण में, उन्हें कम से कम एक स्तर पर HTML/CSS/JS के बारे में पता होना चाहिए, जिस पर वे सामान को नष्ट नहीं करते हैं देखा गया)। – johngrinder
इस एक वर्ष के प्रश्न के बाद से और मैं गुंजाइश नहीं जानते यहां पर मेरे जवाब का। हाल ही में मुझे इस तरह की स्थिति का सामना करना पड़ा, यानी मुझे अपनी एमवीसी साइट में विभिन्न भाषाओं के लिए स्थानीयकरण को लागू करने की आवश्यकता है।
मैंने Resource
फ़ाइल का उपयोग करने पर विचार किया। इसे कार्यान्वित करने में बहुत आसान है, लेकिन मुद्दा यह है कि विकास के चरण के दौरान, हमें स्थानीय तारों को निर्दिष्ट करने की आवश्यकता है। तो यदि यह एक बहु भाषा समर्थन है, तो हमें प्रत्येक भाषा के लिए संसाधन फ़ाइल बनाने की आवश्यकता है। यदि ग्राहक क्या बदलता है या एक नई भाषा जोड़ता है, तो यह बहुत मुश्किल है और हमें एक बिल्ड प्रदान करने की आवश्यकता है।
दूसरा मैं Satelite Assemblies
पर विचार करता हूं। यह संसाधन के समान भी है, लेकिन यह असेंबली को बाहर की ओर संपादित करने और इसे वापस बिन फ़ोल्डर में रखने की आजादी देता है। इसके लिए ग्राहक/डेवलपर के लिए बहुत मेहनत की भी आवश्यकता है।
तीसरा मुझे डीबी में भंडारण माना जाता है। यह दृष्टिकोण ठीक है और हमारे पास सर्वर से डेटा पढ़ने के लिए कुछ तंत्र है। इसके लिए एक बार प्रयास की आवश्यकता है और ग्राहक के पास कोई भरोसेमंद नहीं है।
मैं एक कस्टम DisplayNameAttributre
ओवरराइड और निर्माता से मैं डीबी गुजरती हैं और डेटा प्रस्तुत करने के लिए
आपकी आवश्यकता यह आप पर दृश्य प्रदर्शित करना चाहिए के आधार पर मिल जाएगा।
रिसोर्स मेनेजर
/// <summary>
/// Extended display attribute which will handles the request
/// It will call every time when the property is rendered (return View() - from controller)
/// </summary>
public class ResourceManagerAttribute : DisplayNameAttribute
{
public ResourceManagerAttribute(string resourceKey, string resourceNameSpace = "")
: base(GetDisplayName(resourceKey, resourceNameSpace))
{ }
private static string GetDisplayName(string resourceKey, string resourceNameSpace = "")
{
// get the browser's prefered language.
string browserLanguage = HttpContext.Current.Request.UserLanguages.First();
// Get the locale data for that property and displays.
switch (browserLanguage)
{
case "en-US": return "Eng " + resourceKey;
// calls db based on resource key
case "hi": return "Hin " + resourceKey;
}
return "-- Not Implemented Now -- ";
}
ViewModel
public class HomeViewModel
{
//calls the resource
[ResourceManager("MID")]
public int MID { get; set; }
[ResourceManager("Name")]
public string Name { get; set; }
[ResourceManager("Addess")]
public string Addess { get; set; }
}
मैं बेहतर एक कस्टम MetadataProvider बनाने और मॉडल के लिए एक सम्मेलन प्रयोग करने के लिए जाना होगा। > मूल्य
प्रमाणकों, आम बटन और इतने संसाधन फ़ाइल के लिए - मॉडल नाम स्थान से 1 संसाधन फ़ाइल और ModelName.PropertyName की तरह एक सम्मेलन की तरह।
विचारों पाठ के लिए मैं वास्तव में एक अच्छा तरीका खोजने की कोशिश कर रहा हूँ। हो सकता है संकलन से पहले एक पूर्व-प्रक्रिया और स्थानीय ग्रंथों के लिए एक कस्टम स्कोप, इसलिए पूर्व-प्रक्रिया डिफ़ॉल्ट दृश्य के साथ प्रत्येक दृश्य के लिए संसाधन फ़ाइल बना सकती है।
- 1. एएसपी.नेट - एमवीसी 3: स्थानीयकरण
- 2. एएसपी.नेट एमवीसी छद्म-स्थानीयकरण
- 3. एएसपी.नेट एमवीसी 3: - स्थानीयकरण स्टोर
- 4. एएसपी.नेट एमवीसी 3 कस्टम एचटीएमएल हेल्पर्स- सर्वोत्तम अभ्यास/उपयोग
- 5. एएसपी.नेट 4.0- पृष्ठभूमि कार्यकर्ता - सर्वोत्तम अभ्यास
- 6. एएसपी.नेट एमवीसी कुकीज़ सर्वश्रेष्ठ अभ्यास
- 7. जावा स्थानीयकरण सर्वोत्तम प्रथाओं
- 8. एमवीसी सर्वोत्तम अभ्यास के रूप में?
- 9. एएसपी.नेट वेब अनुप्रयोग स्थानीयकरण के लिए सर्वोत्तम प्रथाएं
- 10. एएसपी.नेट एमवीसी मॉडल के साथ सर्वोत्तम प्रथाओं
- 11. एएसपी.नेट एमवीसी में बहुभाषी आवेदन - सर्वोत्तम व्यवहार?
- 12. सर्वोत्तम अभ्यास
- 13. स्थानीयकरण एमवीसी 3 सत्यापन संदेश
- 14. सर्वोत्तम अभ्यास फोनगैप आर्किटेक्चर
- 15. जीएनयू गेटटेक्स्ट के साथ एएसपी.नेट एमवीसी वेबसाइटों का स्थानीयकरण?
- 16. एक एएसपी.नेट एमवीसी ऐप
- 17. एएसपी.नेट में इनपुट सत्यापन के लिए सर्वोत्तम अभ्यास?
- 18. एएसपी.नेट: स्पष्ट बनाम निहित स्थानीयकरण?
- 19. एसवीएन लेआउट - सर्वोत्तम अभ्यास
- 20. LinqToSql सर्वोत्तम अभ्यास
- 21. फेसबुक लॉगिन सर्वोत्तम अभ्यास
- 22. परिपत्र-निर्भरता सर्वोत्तम अभ्यास
- 23. कनेक्शन स्ट्रिंग सर्वोत्तम अभ्यास
- 24. एलडीएपी सर्वोत्तम अभ्यास
- 25. ctags सर्वोत्तम अभ्यास
- 26. निर्भरता इंजेक्शन सर्वोत्तम अभ्यास
- 27. जीडब्ल्यूटी सर्वोत्तम अभ्यास - एमवीपी
- 28. एलडीएपी मॉडलिंग सर्वोत्तम अभ्यास
- 29. नेस्टेड विधियों, सर्वोत्तम अभ्यास
- 30. UITableView सर्वोत्तम अभ्यास
यह एक अच्छा तरीका है http://stackoverflow.com/questions/381070/asp-net-mvc-localization-best-practice/12936708#12936708 – kbvishnu