2011-04-26 18 views
16

क्या समाधान की सभी परियोजनाओं के लिए सामान्य गुण फ़ाइल रखने का कोई तरीका है?सामान्य सेटिंग्स के लिए सामान्य सेटिंग्स.सेटिंग फ़ाइल

मेरे पास एक कंसोल एप्लिकेशन और अन्य क्लास लाइब्रेरी फाइलों का समूह है और मैं उनके लिए केवल एक सेटिंग फ़ाइल चाहता हूं।

मैं ऐप के बारे में बात नहीं कर रहा हूं। फ़ाइल कॉन्फ़िगर करें। मैं सेटिंग्स. सेटिंग्स फ़ाइल के बारे में बात कर रहा हूँ।

कोई विचार यह है कि मैं इसे कैसे कर सकता हूं?

ऐप.कॉन्फिग की बजाय सेटिंग्स फ़ाइल में कॉन्फ़िगरेशन सेटिंग्स को स्टोर करना भी एक अच्छा अभ्यास है?

+0

मुझे लगता है कि पूरे समाधान/परियोजना विचार को बर्बाद कर देगा। आप अन्य समाधानों में अपने कोड के हिस्सों को आसानी से पुन: पेश करने के लिए एक समाधान के लिए कई परियोजनाएं बना सकते हैं। परियोजनाएं समाधान को व्यवस्थित करने का एक तरीका नहीं हैं - इसके लिए आप एक परियोजना के अंदर फ़ोल्डर्स के साथ सबसे अच्छे होंगे। – hyp

+0

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

+0

क्या मैंने कहा कि मेरे पास एकाधिक समाधान हैं जो एकल प्रोजेक्ट उत्पन्न करते हैं? मैं बस इतना करना चाहता हूं कि परियोजना में सामान्य सेटिंग्स.सेटिंग फाइल हो। जैसे कि हमारे पास web.config या app.config है। – Asdfg

उत्तर

21

उस फ़ाइल को रखें जिसे आप सॉल्यूशन फ़ोल्डर में प्रोजेक्ट में साझा करना चाहते हैं। फिर, प्रत्येक प्रोजेक्ट में, मौजूदा आइटम जोड़ने का चयन करें ..

मौजूदा आइटम जोड़ें संवाद में, सामान्य फ़ाइल चुनें। जोड़ें बटन पर क्लिक करने के बजाय, जोड़ें बटन के दाईं ओर स्थित ड्रॉप-डाउन तीर पर क्लिक करें और ड्रॉप-डाउन मेनू से लिंक के रूप में जोड़ें चुनें।

Add As Link

यदि यह एक सेटिंग फ़ाइल के लिए है, तो आप फ़ाइल के लिए कस्टम उपकरण संपत्ति निर्धारित करने की आवश्यकता:

file properties

यदि आपकी फ़ाइल Settings.settings है आप अपने प्रोजेक्ट गुण को खोल कर उसे सेटिंग टैब पर जाएं और विजुअल स्टूडियो स्वचालित रूप से आपके लिए यह कस्टम टूल प्रॉपर्टी सेट करेगा।

एक बार कस्टम टूल सेट हो जाने पर, आपको अपनी सेटिंग्स फ़ाइल के नीचे बनाई गई Designer.cs फ़ाइल दिखाई देगी। इस Designer.cs फ़ाइल में आपकी सेटिंग्स को प्रोग्रामिक रूप से सुलभ बनाने के लिए जेनरेट कोड शामिल है।

Designer sub-file

आप देख सकते हैं, Designer.cs फ़ाइल भी एक लिंक की गई फ़ाइल है, और यह भौतिक स्थान अपनी सेटिंग्स फ़ाइल के रूप में ही होगा।

+2

लेकिन फिर यदि मैं उन्हें क्लास लाइब्रेरी में Properties.Settings.Default.SettingName की तरह एक्सेस करने का प्रयास करता हूं, तो यह इसे पहचान नहीं पाता है। – Asdfg

+0

मेरा संपादन देखें .... –

+0

यदि यह आपकी समस्या को हल करता है (इसे करना चाहिए) मेरे उत्तर को स्वीकार करना और स्वीकार करना सराहना की जाएगी, धन्यवाद। –

8

वैकल्पिक रूप से, आप internal के बजाय सेटिंग्सpublic पर सेट कर सकते हैं।

जाएं YourProject-> गुण> सेटिंग

enter image description here

1

जवाब @qes से ऊपर स्वीकार किए जाते हैं सही है, लेकिन मैं एक स्थिति है जहाँ CustomToolNamespace को निर्दिष्ट काम में आया के रूप में मैं पहले से ही कुछ परियोजना था विशिष्ट सेटिंग्स। नेमस्पेस को कुछ विशिष्ट पर सेट करके, मुझे समाधान में प्रत्येक प्रोजेक्ट के सापेक्ष स्वत: उत्पन्न नामस्थान नहीं मिला।

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