एक app.config के एक गैर मैनुअल निर्माण के लिए आपका जवाब विजुअल स्टूडियो प्रोजेक्ट प्रॉपर्टीज / सेटिंग्स टैब है।
जब आप कोई सेटिंग जोड़ते हैं और सहेजते हैं, तो आपका app.config अपने आप बन जाएगा। इस बिंदु पर कोड का एक गुच्छा { yourclasslibrary .Properties} नेमस्पेस होता है जिसमें आपकी सेटिंग्स के अनुरूप गुण होते हैं। सेटिंग्स खुद app.config के आवेदन सेटिंग्स सेटिंग्स में रखा जाएगा।
<configSections>
<sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
<section name="ClassLibrary.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
</sectionGroup>
</configSections>
<applicationSettings>
<ClassLibrary.Properties.Settings>
<setting name="Setting1" serializeAs="String">
<value>3</value>
</setting>
</BookOneGenerator.Properties.Settings>
</applicationSettings>
यदि आपने Setting1 = 3 नामक एक एप्लिकेशन स्कोपिंग सेटिंग जोड़ी है, तो Setting1 नामक एक संपत्ति बनाई जाएगी। ये गुण बाइनरी के संकलन भाग में बन रहे हैं और उन्हें DefaultSettingValueAttribute के साथ सजाया गया है जो आपके द्वारा विकास के समय में निर्दिष्ट मूल्य पर सेट है।
[ApplicationScopedSetting]
[DebuggerNonUserCode]
[DefaultSettingValue("3")]
public string Setting1
{
get
{
return (string)this["Setting1"];
}
}
इस प्रकार अपने वर्ग पुस्तकालय कोड के रूप में आप इन गुणों का उपयोग करते हैं यदि कोई संगत सेटिंग रनटाइम कॉन्फ़िगरेशन फ़ाइल में मौजूद नहीं है, तो यह डिफ़ॉल्ट मान का उपयोग करने के लिए वापस आ जाएगी। इस तरह से एप्लिकेशन को एक सेटिंग प्रविष्टि की कमी के लिए क्रैश नहीं होगा, जो पहली बार बहुत भ्रामक है जब आप नहीं जानते कि ये चीजें कैसे काम करती हैं। अब, आप अपने आप से पूछ रहे हैं कि एक तैनात पुस्तकालय में अपने स्वयं के नए मूल्य को कैसे निर्दिष्ट कर सकते हैं और डिफ़ॉल्ट सेटिंग मूल्य का उपयोग करने से बचना चाहिए?
ऐसा तब होगा जब हम निष्पादन योग्य एप्लिकेशन को ठीक से कॉन्फ़िगर करेंगे ।config। दो कदम। 1. हम यह जानते हैं कि हमारे पास उस वर्ग पुस्तकालय के लिए एक सेटिंग्स खंड होगा और 2. छोटे संशोधनों के साथ हम निष्पादन योग्य विन्यास में कक्षा पुस्तकालय की कॉन्फ़िगरेशन फ़ाइल पेस्ट करते हैं। (वहाँ एक विधि है जहाँ आप क्लास लाइब्रेरी कॉन्फिगर फाइल को बाहरी रख सकते हैं और आप इसे एक्जीक्यूटेबल के कॉन्फिगर से संदर्भित करते हैं।
तो, आपके पास एक क्लास लाइब्रेरी के लिए एक app.config हो सकता है लेकिन अगर आप इसे मूल एप्लिकेशन के साथ ठीक से एकीकृत नहीं करते हैं तो यह बेकार है। यहां देखें कि मैंने कुछ समय पहले क्या लिखा था: लिंक