2010-06-08 14 views
7

मैं अपने सी # कंसोल एप्लिकेशन में कॉन्फ़िगरेशन फ़ाइल का उपयोग करने का प्रयास कर रहा हूं। मैंने नई -> एप्लिकेशन कॉन्फ़िगरेशन फ़ाइल जाकर और myProjectName.config नामकरण करके प्रोजेक्ट के भीतर फ़ाइल बनाई है। मेरे कॉन्फ़िग फ़ाइल इस तरह दिखता है:सी # में एप्लिकेशन कॉन्फ़िगरेशन फ़ाइल का उपयोग कैसे करें?

<?xml version="1.0" encoding="utf-8" ?> 
<configuration> 
<appSettings> 
<add key="SSDirectory" value="D:\Documents and Settings\****\MyDocuments\****" /> 
</appSettings> 
</configuration> 

कोड का उपयोग करने की यह इस तरह दिखता है:

private FileValidateUtil() 
    { 
     sSDirFilePath = ConfigurationSettings.AppSettings["SSDirectory"]; 
     if (sSDirFilePath == null) 
      Console.WriteLine("config file not reading in."); 
    } 

किसी को भी यह क्यों काम नहीं कर रहा है के रूप में एक संकेत उधार दे सकते हैं? (मुझे त्रुटि संदेश मिल रहा है।)

धन्यवाद !!

badPanda

+0

क्या त्रुटि संदेश? –

+0

हर उस अस्पष्टता के बारे में क्षमा करें। जब मैंने एक त्रुटि संदेश का उल्लेख किया, तो मेरा मतलब कंसोल। राइटलाइन स्टेटमेंट था जिसका कहना है कि 'कॉन्फ़िगरेशन फ़ाइल' में पढ़ नहीं रही है, मैं भ्रम के लिए क्षमा चाहता हूं। – badpanda

उत्तर

8

आप app.config से नाम नहीं बदल सकते और इसे और अधिक जानकारी प्रदान करने के बिना यह पता लगाने के लिए ConfigurationManager की उम्मीद है। MyProjectName.config का नाम app.config पर वापस बदलें, पुनर्निर्माण करें, और आप myProjectName.exe.config नामक बिन फ़ोल्डर में एक फ़ाइल देखेंगे। फिर ConfigurationManager.AppSettings पर आपका कॉल सही तरीके से काम करना चाहिए।

2

पहले, ConfigurationSettings के बजाय ConfigurationManager का उपयोग करें।

दूसरा, कहने के बजाय "काम नहीं करता", जो कोई उपयोगी जानकारी प्रदान नहीं करता है, हमें बताएं कि आप क्या देख रहे हैं। क्या यह संकलित करता है? क्या यह रनटाइम पर अपवाद फेंकता है? क्या आपका पीसी धुंधला प्लास्टिक की तरह धुआं और गंध शुरू कर देता है?

इस प्रयास करें:

public string GetSSDirectory() 
    { 
     string sSDirFilePath = string.Empty; 

     if (!ConfigurationManager.AppSettings.AllKeys.Contains("SSDirectory")) 
     { 
      Console.WriteLine("AppSettings does not contain key \"SSDirectory\""); 
     } 
     else 
     { 
      sSDirFilePath = ConfigurationManager.AppSettings["SSDirectory"]; 
      Console.WriteLine("AppSettings.SSDirectory = \"" + sSDirFilePath + "\""); 
     } 

     return sSDirFilePath; 
    } 
+0

मैंने वास्तव में कहा था कि यह अगर कथन में त्रुटि संदेश फेंक रहा था, लेकिन आपके उत्तर के लिए धन्यवाद। – badpanda

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