0

ich einen Schlüssel hinzugefügt MessageToLog zum appconfig Datei einer .net Framework4 Windows-Anwendung in C# genannt wie unten:Erreichen appsettings.config Schlüssel in C# Rückkehr null

<?xml version="1.0"?> 
... 
... 
<appSettings> 
... 
... 
<add key="MessageToLog" value="hello"/> 
... 
... 
</appSettings> 

Wie ich sie versuche Schlüssel zu erreichen in C# ist:

string message2 = System.Configuration.ConfigurationManager.AppSettings["MessageToLog"]; 
Console.Writeln(message2); 

Allerdings sehe ich Null-Wert anstelle von Hallo am Ausgang. Was mache ich falsch? Wo soll ich nach dem Fehler suchen? Danke

+2

Funktioniert gut auf meiner Maschine nach dem Ändern von 'Console.Writeline'. Dies kompiliert nicht mit 'Console.Writeln', also bin ich mir nicht sicher, wie Sie null nichts sehen. – Mvarta

Antwort

0

Stellen Sie sicher, dass Ihre app.config korrekt benannt ist (es heißt "app.config") und in Ihrem Konsolenanwendungsprojekt ist, nicht in einem anderen Projekt.

Eine schnelle Möglichkeit, dies zu überprüfen - versauen Sie Ihre app.config und versuchen Sie, die Konsole App zu starten. Fügen Sie einige Zeichen wie folgt ein:

<?xml version="1.0"?>xxx 
        ^^^ 

Versuchen Sie, die Konsolenanwendung auszuführen. Es sollte mit Konfigurationsfehlern fehlschlagen. Wenn dies nicht der Fall ist, ist die bearbeitete app.config nicht Teil dieses Projekts.

Haben Sie es auch über Hinzufügen> Neues Element> Allgemein> Anwendungskonfigurationsdatei hinzugefügt?

Das stellt sicher, dass die richtigen Elemente vorhanden sind. (Ich frage mich nur, ob Sie es vielleicht manuell erstellt haben.) Die Datei sollte minimal wie folgt aussehen:

<?xml version="1.0" encoding="utf-8" ?> 
<configuration> 
    <appSettings> 
    <add key="MessageToLog" value="hello"/> 
    </appSettings> 
</configuration>