2009-06-29 5 views
13

क्या कोई मुझे App.Config फ़ाइल में AppSettings और ApplicationSettings अनुभागों के बीच अंतर बता सकता है। दो अलग-अलग खंड क्यों हैं जो स्पष्ट रूप से एक ही काम करते हैं ??एप्लिकेशन सेटिंग्स अनुभाग और ऐपसेटिंग अनुभाग के बीच क्या अंतर है?

+0

आप "एप्लिकेशन सेटिंग्स" कहां देखते हैं? मुझे विश्वास नहीं है कि यह वैध कॉन्फ़िगरेशन अनुभाग है। क्या आप एक उदाहरण पोस्ट कर सकते हैं? – alanquillin

+1

माफ करना, मैं ApplicationSettings, नहीं ऐप्लिकेशन सेटिंग मतलब – Calanus

उत्तर

18

मुझे विश्वास है कि अपने app.config/web.config में <appsettings/> संग्रह आप कुंजी-मान जोड़ों में सेटिंग रखने की अनुमति देता है, और System.Configuration एपीआई के माध्यम से पहुंचा जा सकता है, इस प्रकार है:

string setting = System.Configuration.ConfigurationManager.AppSettings["settingName"];

सेटिंग्स केवल स्ट्रिंग मानों के रूप में संग्रहीत और पुनर्प्राप्त की जा सकती हैं।
उन्हें सिस्टम के माध्यम से भी पहुंचा जा सकता है। कॉन्फ़िगरेशन। कॉन्फ़िगरेशन सेटिंग्स, लेकिन इस तरह से हटा दिया गया है।

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

MyProjectName.Properties.Settings.Default.SettingName

सूचना कैसे दो संग्रह एक्सेस किया जाता है में अंतर:

आप आम तौर पर अपनी सेटिंग्स के रूप में इस का उपयोग।

सेटिंग्स भंडारण की दूसरी (गैर हटा दिया गया) जिस तरह से यह करने के लिए बेहतर तरीका है, और लचीलापन और शक्ति के बहुत सारे प्रदान करता है। हालांकि कुछ सीखना पड़ता है - लेकिन यह प्रयास के लायक है।

+10

"चीजों को करने का उपरोक्त तरीका बहिष्कृत कर दिया गया है।" - System.Configuration.ConfigurationSettings.AppSettings को हटा दिया गया है, लेकिन इसे System.Configuration.ConfigurationManager.AppSettings द्वारा प्रतिस्थापित किया गया है। कॉन्फ़िगरेशन सेक्शन का उपयोग बहिष्कृत नहीं किया गया है। – Joe

+0

आह सही! उस स्पष्टीकरण के लिए धन्यवाद। – Calanus

+0

लगभग @ जो के परिशिष्ट को याद किया। इसे उन लोगों के लिए मूल पोस्ट में जोड़ा गया जो सभी टिप्पणियां नहीं पढ़ते हैं। –

2

http://kevinskorner.net/blog/post/2008/03/27/applicationSettings-vs-appSettings.aspx

अनुप्रयोग सेटिंग्स हमें और अधिक नियंत्रण और सबसे महत्वपूर्ण, intelliscence दे।

+0

कि लिंक मर चुका है, लेकिन यह Archive.org पर उपलब्ध है: http://web.archive.org/web/20100721004740/http://kevinskorner.net/blog/post/2008 /03/27/applicationSettings-vs-appSettings.aspx – Nick

0

यह पश्च संगतता है, जो हम सभी प्यार के साथ क्या करना है। एप्लिकेशन सेटिंग्स नए निर्माण है।

उपयोगकर्ता नई सेटिंग्स कॉन्फ़िगरेशन प्रबंधक और वेब कॉन्फ़िगरेशन प्रबंधक कक्षाएं अब आपकी सेटिंग्स पर पहुंचने के लिए और ऐसा करने के लिए आपको एक संदर्भ की आवश्यकता है ताकि System.configuration और सिस्टम नहीं हो। कॉन्फ़िगरेशन :)।

एक समय यह थोड़ा पागल उसने ऐसा नहीं किया पाने के लिए शुरू कर दिया।

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