2009-11-04 15 views
11

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

हालांकि, मैं फ़ाइल नाम सम्मेलन को बदलना चाहता हूं। मैंने देखा कि ठीक उसी उद्देश्य के लिए एक अतिरंजित GetResourceFileName विधि है। लेकिन परावर्तक का उपयोग करके मैंने देखा कि CreateFileBasedResourceManager द्वारा उपयोग किया गया कन्स्ट्रक्टर निजी है, और अन्यथा "असेंबली के बजाय उपयोग फ़ाइलों को सेट करना" असंभव है।

क्या पूरे InternalGetResourceSet विधि को पुन: कार्यान्वित करने की आवश्यकता के बिना इसके आसपास जाने का कोई तरीका है?

बहुत बहुत धन्यवाद!

+1

आप कभी भी इस हल कर पाने की थी? आप "निजी ध्वज" समस्या को पाने के लिए ऐप के भीतर प्रतिबिंब का उपयोग कर सकते हैं – jcolebrand

+1

मैंने प्रतिबिंबक का उपयोग संसाधन प्रबंधक के कार्यान्वयन की प्रतिलिपि बनाने और जो भी मुझे चाहिए उसे संशोधित करने के लिए किया था। बहुत सुरुचिपूर्ण नहीं है, लेकिन यह काम किया। –

उत्तर

1

मोनो की अच्छी छोटी उपयोगिता है जो इसके साथ मदद करता है, जिसे Msgfmt कहा जाता है, जिसका उपयोग .po फाइल निर्देशिका से .resources फ़ाइलों को बनाने के लिए किया जा सकता है।

Msgfmt.exe -iMessages.es.po -oMessages.es.resources 

मैं @http://weblogs.manas.com.ar/spalladino/2009/10/01/using-gnu-gettext-for-i18n-in-c-and-asp-net/ जो मुझे मदद की एक दिलचस्प लेख भर में आया था और यह अच्छी तरह से आप भी मदद कर सकता है ..

इसकी एक अलग दृष्टिकोण है, लेकिन यह मेरे लिए काम किया!

+2

लेख के लिंक के लिए धन्यवाद ... लेकिन लेखक वास्तव में खुद है: पी –

+0

अच्छा लेख ... यह याद रखना है ... लिंक पोस्ट करने से पहले लेख पर लेखक की जांच करें! –

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