2012-04-26 19 views
19

Ich verstehe nicht, wie man eine Nachricht in app.config schreibt, die aus zwei oder mehr Zeilen besteht. Mein üblicher Code in der Konfigurationsdatei ist:Wie fügt man einen Zeilenvorschub in app.config ein?

add key="msg_test" value="This is test message."  

Und ich las es in Cis-Code wie:

ConfigurationSettings.AppSettings[msg_test]; 

Und ich mag so etwas wie

add key="msg_test" 
    value="This is test message \n are you sure you want to continue?" 
+0

warum Funktioniert es nicht? Was passiert und was erwartest du? meinst du, du hast '\ n' auf den Wertstring gesetzt? – Default

+0

probiert "erste Zeile" + Environment.NewLine + "zweite Zeile" '? – Reniuz

+4

@Reniuz: Sie können nicht C# -Code in der Konfigurationsdatei schreiben. – Guffa

Antwort

31

Sie können nur Zeilenumbrüche im Wert verwenden:

add key="msg_test" value="This is 
test message." 

Sie können auch XML-codierte Zeichen verwenden:

add key="msg_test" value="This is
test message." 

(. I beide haben getestet, und sie arbeiten)

+1

Ich dachte wirklich nicht, als wäre es so einfach wie die erste Antwort. Und ich versuchte XML-codierte Zeichen zu verwenden, aber irgendwo fand ich # 92 für \ und # 110 für n. Und diese funktionierten nicht. Vielen Dank für Ihre Antwort :) – quitprog

+1

@ parixit: '# &92; # &110;' würde in der Tat Sie \ n \ in der Zeichenfolge, aber das nicht ein einzelnes Steuerzeichen wie in einem Literal-String, es ist nur zwei separate Zeichen. – Guffa

+0

Dank @Guffa, Ihre Lösung der Verwendung von XML-codiert ( ) hat mich gerettet .. !! – Ron

11

Die XML-Flucht schreiben für Newline ist 
, so sollte dies funktionieren:

<add key="msg_test" 
value="This is test message &#xA; are you sure you want to continue?"> 
Verwandte Themen