MVC3 Стриппинг Запрос строки из моего параметра - PullRequest
2 голосов
/ 06 августа 2011

У меня есть действие MVC3, которое принимает параметр (URL), в котором может быть строка запроса.Моя подпись действия выглядит следующим образом:

GetUrl(string url)

Я ожидаю, что смогу отправлять URL-адреса, и она работает каждый раз, если в URL-адресе нет строки запроса.Например, если я перейду к:

MyController/GetUrl/www.google.com

, параметр url будет выглядеть как "www.google.com" -Perfect.Однако, если я отправлю MyController / GetUrl / www.google.com /? Id = 3, параметр url будет выглядеть как "www.google.com/". Как мне получить MVC3, чтобы получить полный URL-адрес в этом параметре?-В том числе строка запроса?

Ответы [ 2 ]

1 голос
/ 06 августа 2011

Достаточно просто указать URL. Закодируйте переданный URL на странице, но вы открываете себя для некоторых возможных проблем безопасности.

Я бы посоветовал вам зашифровать URL-адрес, затем закодировать его, а затем передать его в качестве значения, которое защищает вас от того, чтобы люди просто что-то передавали в ваше приложение.

1 голос
/ 06 августа 2011

Это потому, что система считает id = 3 своей собственной строкой запроса. При создании ссылки в представлении необходимо использовать @ Url.Encode для преобразования необработанной строки URL-адреса в кодированную строку, которая будет принята в качестве параметра контроллера.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...