2009-07-16 12 views
4

これは神のひどい質問かもしれませんが、私はなぜこれをやらせないのか分かりません。(ASP.NET)web.configのキー/値でString.Formatを実行できますか?

Webページから取得した動的パラメータを持つWeb.configに格納する必要があるURLがあります。

だから私は、格納したい:

 <add key="TestURL" 
value="https://test/subscribe?msisdn={0}&code=1&pass=2"/> 

それは私がこれを行うことはできません。 {0}の後に "&"にエラーがあります。

誰でも私がここで間違っていることを教えてもらえますか?キャラクターから脱出する必要がありますか?

+0

のようにエスケープする必要があります&だではないでしょうか? – Jason

答えて

12

は、代わりに

<add key="TestURL" value="https://test/subscribe?msisdn={0}&amp;code=1&amp;pass=2"/> 

お知らせエスケープアンパサンドを、これを試してみてください。

+0

@JackMタグを追加する値の属性に置きたい値は、HTMLでエンコードする必要があります。あなたがHttpServerUtility.HtmlEncodeメソッドを使って.Netを持っているものを書くことができるように、値を適切にエンコードする方法を考え出すのが難しい場合は、http://msdn.microsoft.com/en-us/library/ w3te6wfz.aspx –

+0

jpj625はWeb.configファイルがXMLテキストファイルに保存されているという彼の声明では正確です。 XML文書のエスケープ文字に関するこのStackOverflowの質問を参照してください: http://stackoverflow.com/questions/1091945/what-c​​haracters-do-i-need-to-escape-in​​-xml-documents –

3

設定ファイルはXMLであり、XMLエンティティをエスケープする必要があります。問題は、あなたの{0}の書式で使用するために、それはあなたがまだ脱出しようとしている

&amp; 
関連する問題