App.Config फ़ाइल कंसोल अनुप्रयोग C # में


92


मेरे पास एक कंसोल एप्लिकेशन है जिसमें मैं एक फ़ाइल का नाम लिखना चाहता हूं।

Process.Start("blah.bat");

आम तौर पर, मेरे पास ऐसा कुछ होगा जो विंडोज़ एप्लीकेशन में फ़ाइल 'blah.bat'का नाम सेटिंग्स में फ़ाइल को गुण में लिखकर करता है ।
हालाँकि, यहाँ मुझे कोई सेटिंग फ़ाइल नहीं मिली और मैंने उसी उद्देश्य के लिए एक app.config जोड़ा ।

मुझे यकीन नहीं है कि app.config में यहाँ क्या लिखना है , जिससे मुझे विंडोज फॉर्म में भी इसी तरह की उपलब्धि हासिल होगी ।

उदाहरण के लिए: विंडोज़ रूपों में। Process.Start(Properties.Settings.Default.BatchFile);
जहां BatchFileगुण में सेटिंग्स फ़ाइल में एक स्ट्रिंग है।

जवाबों:


212

आप System.Configurationअपनी परियोजना में एक संदर्भ जोड़ सकते हैं और फिर:

using System.Configuration;

फिर

string sValue = ConfigurationManager.AppSettings["BatchFile"];

app.configइस तरह से एक फ़ाइल के साथ :

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
   <appSettings>
       <add key="BatchFile" value="blah.bat" />
   </appSettings>
</configuration>

11
ConfigurationSettings.AppSettings["blah.bat"]उपलब्ध है, लेकिन एक चेतावनी देता है कि यह अप्रचलित है। जब मैं ConfigurationManagerऊपर के रूप में उपयोग करने की कोशिश करता हूं, मुझे एक त्रुटि मिलती है जो कहती है कि कॉन्फ़िगरेशन मैनजर वर्तमान संदर्भ में मौजूद नहीं है। : - /
user1240679

69
सुनिश्चित करें कि आप System.Configuration का संदर्भ भी जोड़ते हैं - usingड्यूरेक्टिव तभी काम करता है जब आपके पास उस असेंबली का संदर्भ हो जिसका आप उपयोग करने का प्रयास कर रहे हैं।
xxbbcc

1
देर से टिप्पणी लेकिन मेरे लिए मेरी गलती थी कि मैं appSettings से ऊपरी आवरण 'एस' भूल गया

मैं इंट या बूल कैसे प्राप्त कर सकता हूं, यानी स्ट्रिंग नहीं है?
जैपनीजिका

1
@Zapnologica सब कुछ एक स्ट्रिंग है, जहां तक AppSettingsमाना जाता है। यदि आपके पास सेटिंग स्ट्रिंग्स हैं जिनमें नंबर हैं, तो आपको कॉल int.TryParse()या लाइक करके उन्हें पार्स करना होगा । वही किसी अन्य मूल्य के लिए जाता है जिसे आप एक स्ट्रिंग के अलावा कुछ और व्यवहार करना चाहते हैं।
xxbbcc

18

.NET कोर के लिए, NuGet मैनेजर से System.Configuration.ConfigurationManager जोड़ें।
और App.etfig को App.config से पढ़ें

<appSettings>
  <add key="appSetting1" value="1000" />
</appSettings>

NuGet Manager से System.Configuration.ConfigurationManager जोड़ें

यहां छवि विवरण दर्ज करें

ConfigurationManager.AppSettings.Get("appSetting1")

2

इसे इस्तेमाल करो

System.Configuration.ConfigurationSettings.AppSettings.Get("Keyname")

आप ऐपसेट पर अपने कॉन्फ़िगरेशन को सहेज सकते हैं और मूल्य उपयोग उदाहरण प्राप्त कर सकते हैं।
user5705992

1
रनटाइम संस्करण 1.x के लिए समर्थन प्रदान करता है। यह अब अप्रचलित है। कृपया उपयोग करेंSystem.Configuration.ConfigurationManager.AppSettings
wp78de

1
System.Configuration विधानसभा को संदर्भों में आवश्यक है।
मुफ्लिक्स
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.