Параметр глобальной маршрутизации в ASP.NET MVC - PullRequest
0 голосов
/ 17 сентября 2010

Когда пользователь нажимает на ссылку, я хочу зарегистрировать некоторую информацию.Я не могу выполнить запрос AJAX, потому что, если они нажмут на ссылку, страница будет выгружена (поскольку они переходят на новую страницу), и я не хочу заставлять их оставаться на странице до синхронного событияотделки.

Итак, у меня была идея добавить параметр в URL.Т.е. URL будет actual/action?actualParams&infoIWantToLog=data.Затем я мог бы удалить информацию, которую я хочу зарегистрировать, зарегистрировать, а затем передать их URL-адрес действию, к которому они действительно хотели перейти.Это возможно сделать с маршрутизацией MVC?

1 Ответ

2 голосов
/ 17 сентября 2010

Обычно URL-адреса отслеживания отправляют пользователя на определенную страницу (или в данном случае действие), скажем, / Track, а затем передают параметры для регистрации (включая URL-адрес, на который отправляется пользователь) через строку запроса.

Например, перейдите в Google и выполните поиск по термину.Щелкните правой кнопкой мыши результат и скопируйте URL.Теперь вставьте его в блокнот.Вы увидите, что это не прямая ссылка на результат поиска, а скорее на страницу отслеживания Google.Например, когда я ищу asp.net и нажимаю на первый результат (для www.asp.net), это фактический URL-адрес, на который Google отправляет мне:

http://www.google.com/url?sa=t&source=web&cd=2&ved=0CDcQFjAB&url=http%3A%2F%2Fwww.asp.net%2Fget-started&rct=j&q=asp.net&ei=BauTTIuCDIaWsgOHgo3ACg&usg=AFQjCNGR6cOBKtUWIKZs9jnpz0vYRDu_EA&sig2=r2q31zniuxHQ4Y6BIoudow&cad=rja

На этой странице регистрируется мой клик, а затем перенаправляется на веб-сайт www.asp.net.

Ваше действие "Отслеживать" будет делать то же самое.Вы создадите контроллер Track с действием Index, а затем проанализируете строку запроса, зарегистрируете информацию и затем вернете RedirectResult к URL-адресу, который хотите отправить пользователю.

Makeсмысл?

...