2012-08-08 12 views
11

यहाँ मेरी app.configConfigurationManager.GetSection रिटर्न अशक्त

<configuration> 
    <configSections> 
     <section name="procedureList" type="System.Configuration.NameValueSectionHandler, System, Version=4.0.30319, Culture=neutral, PublicKeyToken=b77a5c561934e089"/> 
    </configSections> 

    <procedureList> 
    <add key="NAS.spBusObjGetLineProd" value="@area='Melt Shop';@endDt=?date?;@dayonly=1;@obj='Melt Shop Business Objective" /> 
    <add key="NAS.spBusObjGetLineProd" value="@area='Cold Mill';@endDt=?date?;@dayonly=1;@obj='Cold Mill Business Objective" /> 
    </procedureList> 
    <appSettings> 
    <add key="Connstr" value=""/> 
    <add key="Userid" value=""/> 
    <add key="Timeout" value=""/> 
    </appSettings> 

</configuration> 

है लेकिन जब मैं कोड में इसे कहते हैं, मैं एक अशक्त हो रही है वापस

public void samplemethod() 
{ 
    NameValueCollection nvc = ConfigurationManager.GetSection("procedureList") as NameValueCollection; 
    string[] keys = nvc.AllKeys; 
} 

मैं किसी भी ओर इशारा करते हुए मदद की सराहना करेंगे क्या मैं गलत

+0

आप इसे गलत तरीके से कास्टिंग कर रहे हैं। मैं एक संदर्भ के साथ नीचे एक उदाहरण पोस्ट करूंगा जिसका उपयोग आप संदर्भ – MethodMan

+0

के रूप में कर सकते हैं यदि 'as' cast ऑपरेशन विफल रहता है, तो यह शून्य मान देता है। हालांकि, कॉन्फ़िगरेशन फ़ाइल नोट करती है कि सेक्शन प्रकार 'NameValueSectionHandler' है - आपको GetSection() को कॉल करते समय इस प्रकार कास्टिंग करना चाहिए। –

+0

जब भी मैं नाम ValueSectionHandler में बदलता हूं, तब भी मुझे एक शून्य वापस मिल रहा है – edepperson

उत्तर

5

Using section handlers to group settings in the configuration file

उदाहरण के लिए किया है आप टी की तरह कुछ का पालन कर सकते वह

private void ReadSettings() 
{ 
    NameValueCollection loc = 
    (NameValueCollection)ConfigurationSettings.GetConfig("procedureList"); 
} 

MSDN ConfigurationManager.GetConfig Method

+0

अभी भी शून्य वापस – edepperson

+5

मिल गया है यह पता चला है। मेरे पास डीएलएल में एप कॉन्फ़िगर था, कॉलिंग फॉर्म नहीं। चूंकि आखिरकार डीएल को किसी सेवा द्वारा बुलाया जा रहा है, इसलिए मुझे इसे कॉन्फ़िगरेशन मैनेजर के साथ ठीक करने की आवश्यकता है। ओपेनएक्स कॉन्फ़िगरेशन। प्रोडिंग के लिए धन्यवाद। – edepperson

+1

कोई समस्या नहीं है .. यही कारण है कि मैं हमेशा डेवलपर्स से पूछता हूं कि क्या वे अपना कोड डीबग करते हैं .. यह एक अद्भुत उपकरण है डीबगर ... खुशी है कि आपको यह काम मिल गया है – MethodMan

1

निम्नलिखित आप परीक्षण कर रहे हैं अपने वर्ग अपने अपने टेस्ट परियोजना में app.config के विन्यास कॉपी चाहिए।

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