LINQPad, Util.RawHtml и панель результатов, похоже, изменяют поведение HREF и Uri.EscapeDataString - PullRequest
2 голосов
/ 17 января 2012

У меня есть следующий код:

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 перед открытием нового браузера?

...