2013-07-22 2 views
0

Я новичок в .Net особенно 4.5 версии.Различное поведение System.Uri

Я написал библиотеку, которая использует класс System.Uri объект. когда я вызываю код:

Uri uri = new Uri("http://myUrl/%2F"); 

в консольном приложении это создать новый объект Uri с AbsoluteUri установлен

"http://myurl/%2F", 

но когда я вызываю тот же код в приложении веба-службе AbsoluteUri устанавливается в

"http://myurl//" 

Как использовать «% 2f» без преобразования в приложении сервера

+0

попробовать с 'HTTP: // myUrl /% 252F' – Damith

+0

% 2F является '/' сеять, что является фактическим пролемом (прецедент)? @Damith - как это так? –

+0

Я пытаюсь использовать [rabbitMQ] (http: // localhost: 15672/api/exchange /% 2f/my-new-exchange). HTTP: // локальный: 15672/API/обмены /% 2f/мой новый обмена – robsonics

ответ

1

%2f конвертировать в /

попробовать с

http://myurl/%252F 

%25 равно % тогда% 252F будет конвертировать в% 2F на стороне сервера, как вы ожидали

Uri uri = new Uri("http://myUrl/%252F"); 
uri.LocalPath // "/%2F" 
Смежные вопросы