Форум программистов, компьютерный форум, киберфорум
C#: ASP.NET MVC
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/8: Рейтинг темы: голосов - 8, средняя оценка - 4.75
2 / 2 / 1
Регистрация: 08.11.2012
Сообщений: 16
1

Машрутизация: как отобразить ключ в url

05.01.2013, 14:55. Показов 1581. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Доброе время суток! Возникла проблема при отображении маршрута в строке ввода браузера для страницы поиска по сайту. Сам поиск работает нормально - "ключ" передается, список найденного отображается. Метод поиска в контроллере принимает аргумент типа string по которому осуществляет поиск:

C#
1
2
3
4
5
public ActionResult SearchAllByKey(string key)
        {
            //логика
            return View(<список найденого>);
        }
В Global.asax прописан маршрут:

C#
1
2
3
4
5
routes.MapRoute(
                  "Search",
                  "Search/{key}", //URL шаблон, например. Category/Anime
                  new { controller = "имя_контроллера", action = "SearchAllByKey", keyValue = UrlParameter.Optional } //по умолчанию
              );
Во View есть форма которая посылает значение из эдита в метод:
C#
1
2
3
4
5
6
<% using (Html.BeginForm("SearchAllByKey", "имя_контроллера", FormMethod.Post, new { enctype = "multipart/form-data" }))
                           {%>
                        <%: Html.ValidationSummary(true) %>
                        <input type="text" id="keyValue" name="key" />
                        <input type="submit" value="Go!" />
                        <% } %>
При нажатии на кнопку "Go!". переходит на страницу с результатами поиска, но в URL (строки ввода браузера) отображается:

http://localhost:порт/Search

Вместо:

http://localhost:порт/Search/ключевое_слово

(Например: http://localhost:порт/Search/нефть или http://localhost:порт/Search/money)

Как сделать так чтобы отображался этот "ключ" в URL-е?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.01.2013, 14:55
Ответы с готовыми решениями:

Как из asp получить полный URL и часть URL от вопросительного знака?
Господа подскажите как из asp получить полный URL и часть URL от вопросительного знака. На...

Как скрыть параметры URL и передать их методом пост используя Url.Action()
Здравствуйте. У меня в представлении на сайте есть ссылка, которая формируется в методе действии...

Как из определенного url, получить определенный текст и отобразить его в программе
Внимание! Знаю со многих проектов, как относятся к такого образа темам, мол &quot;Только форум...

Отобразить url на странице
Здравствуйте многоуважаемые формумчане! У меня есть ссылка на сайт, выглядит она примерно так:...

4
Padawan
473 / 323 / 30
Регистрация: 30.01.2010
Сообщений: 1,841
05.01.2013, 23:59 2
Не подскажу в чем дело, скорее всего нарушается логика определения маршрута, поэтому не нужно усложнять себе жизнь, а сделать так, как это делают все:

Код
https://www.google.ru/search?q=money
http://yandex.ru/yandsearch?text=money
0
2 / 2 / 1
Регистрация: 08.11.2012
Сообщений: 16
06.01.2013, 12:54  [ТС] 3
Если убрать определение маршрута в Global.asax. То url выглядит:

Код
http://сайт.ру/имя_контроллера/SearchAllByKey
параметров не видно!

Хотя должно быть:

Код
http://сайт.ру/имя_контроллера/SearchAllByKey?key=нефть
0
97 / 90 / 18
Регистрация: 09.06.2012
Сообщений: 215
07.01.2013, 20:52 4
Цитата Сообщение от vprs Посмотреть сообщение
routes.MapRoute( "Search", "Search/{key}", //URL шаблон, например. Category/Anime new { controller = "имя_контроллера", action = "SearchAllByKey", keyValue = UrlParameter.Optional } //по умолчанию );
замените keyValue на key или наоборот
Цитата Сообщение от vprs Посмотреть сообщение
routes.MapRoute( "Search", "Search/{key}", //URL шаблон, например. Category/Anime new { controller = "имя_контроллера", action = "SearchAllByKey", key= UrlParameter.Optional } //по умолчанию );
Ну и в методе принимайте соответственно key
1
2 / 2 / 1
Регистрация: 08.11.2012
Сообщений: 16
07.01.2013, 21:34  [ТС] 5
там ошибка! я давно ее поправил! везде там параметр key.
0
07.01.2013, 21:34
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.01.2013, 21:34
Помогаю со студенческими работами здесь

Работа в фоне. Отобразить картинку по url
Добрый вечер! Не получается решить две ситуации, уже обгуглился, голова пухнет... 1)есть маяк...

Машрутизация почты у серверов одного домена
Такая ситуация: есть 10 серверов Домино принадлежащих к одном Лотус-домену. Есть один центральный...

Можно ли отобразить другой URL не перезагружая страницу?
Фреймовый сайт. В строке URL всегда типа: http://myServer.com/index.html А мне надо отобразить...

RSA, как найти закрытый ключ имея открытый ключ, p и q
Прив, задание такое - Как найти закрытый ключ d, если мы знаем открытый ключ e, который равен 5, и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru