2016-04-14 14 views
0

Datei Ich habe eine AppConfig wie diese Datei:AppConfig Looping durch

<configuration> 
    <configSections> 
    <sectionGroup name="TableSettings"> 
     <section name="TableNames" type="System.Configuration.DictionarySectionHandler"/> 
    </sectionGroup> 
    </configSections> 
    <TableSettings> 
    <TableNames> 
     <add key="Tablename" value="DailyBilling_20131231"/> 
     <add key="Tablename" value="DailyBilling_20130131"/> 
    </TableNames> 
    </TableSettings> 
</configuration> 

Ich versuche, durch TableSettings/Tabellennamen in einer Schleife und die Schlüssel-Wert-Paare bekommen.

Ich habe das versucht, aber ich bekomme nur den zweiten Eintrag. d. h. Schlüssel wie Tabellenname und Wert als DailyBilling_20130131.

var _tablenamelist = (ConfigurationManager.GetSection("TableSettings/TableNames") as System.Collections.Hashtable); 

Jede Hilfe wird geschätzt.

Danke.

+1

Bitte finden Sie diese Antwort für Ihre Frage: http://stackoverflow.com/questions/5796258/configurationsmanager-getsection-skips-duplicates – Mikanikal

+0

@ user3447653 Wir hoffen, dass Ihr Problem gelöst wurde. Wenn nicht, denken Sie vielleicht darüber nach, Ihre Frage zu aktualisieren ... http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work/5235#5235 – Monty

Antwort

0

try this ...

 try 
     { 
      string strXML = File.ReadAllText("xml.xml"); 

      XDocument xsrcdoc = XDocument.Parse(strXML); 

      var KeyValuePairs = (from xml in xsrcdoc.Descendants("add") select 
           new { 
            Key = xml.Attribute("key").Value, 
            value = xml.Attribute("value").Value 
           }).ToList(); 
     } //Put a break-point here and mouse-over KeyValuePairs and you should see your values.... 
     catch (Exception) 
     { 
      throw; 
     } 

ich Ihre XML in einen String aus einer Datei (xml.xml) in die Anwendung zu erstellen Ordner lese. Damit der Code funktioniert, setzen Sie strXML auf Ihr XML oder erstellen Sie die Datei xml.xml und speichern Sie XML darin.