Ответ 1
Вы неправильно закодировали амперсанды в своем URI. Помните, что app.config
- это XML файл, поэтому вы должны соответствовать требованиям XML для экранирования (например, &
должен быть &
, <
должен быть <
и >
должен быть >
).
В вашем случае это должно выглядеть так:
<appSettings>
<add
key="fooUriString"
value="https://foo.bar.baz/download/DownloadStream?id=5486cfb8c50c9f9a2c1bc43daf7ddeed&login=null&password=null"
/>
</appSettings>
Но в общем случае, если вы хотите сохранить строку, похожую на "I <3 angle bra<kets & ampersands >>>"
, сделайте следующее:
<appSettings>
<add
key="someString"
value="I <3 angle bra<kets & ampersands >>>"
/>
</appSettings>
void StringEncodingTest() {
String expected = "I <3 angle bra<kets & ampersands >>>";
String actual = ConfigurationManager.AppSettings["someString"];
Debug.Assert.AreEqual( expected, actual );
}