У меня есть следующий код:
var data = "LINQPad+Util.RawHtml";
Util.RawHtml( string.Format( "<a href=\"http://localhost/test?data={0}\">Test</a>", System.Uri.EscapeDataString( data ) ) ).Dump();
Если я просто нажму на ссылку «Тест», отображаемую на панели результатов, URL-адрес в браузере будет: http://localhost/test?data=LINQPad+Util.RawHtml
ЕслиЯ щелкаю правой кнопкой мыши по ссылке и говорю «Открыть в новом окне», URL-адрес в браузере: http://localhost/test?data=LINQPad%2BUtil.RawHtml
Второй метод является правильным (я думаю - так как полученный URL-адрес в моем приложении ASP MVC работаетправильно).Если я просматриваю источник панели «Результаты», сохраняю файл локально, открываю его в браузере и затем просто нажимаю на ссылку, он снова показывает: http://localhost/test?data=LINQPad%2BUtil.RawHtml
Итак, что-то не так с панелью результатов, которую он массирует(или, вернее, URL декодирует HREF перед открытием нового браузера?