2 разных маршрута на одной странице? - PullRequest
1 голос
/ 11 июня 2010

Привет, я довольно новичок с MVC2 или MVC в целом. Если это одна вещь, я поймаю ее маршруты. Как и сейчас, я получил этот сценарий. Я иду с обычного сайта на админа. Моя навигация - это одно и то же частичное представление на обоих, я просто проверяю, какие данные отображать что-то вроде этого.

<% if (!Request.RawUrl.Contains("Admin")){%>
<% foreach (var site in Model) { %>
<%= Html.MenuItem(site.BelongSite, "Sida", "Site", site.BelongSite) %> |
<%} %>
<%} else {%>   
<%= Html.ActionLink("Konfig", "Konfigurera", "Admin") %>
<% } %>

Мой маршрут выглядит так

routes.MapRoute(
                "Admin", // Route name
                "Admin/{action}/{name}", // URL with parameters
                new { controller = "Admin", action = "konfigurera", name = UrlParameter.Optional } // Parameter defaults
            ); 

На моем View под названием Konfigurera я получил Edit сайтов, и они используют маршрут выше, и он прекрасно работает. Навигация не назначается никаким действиям. Это просто <a href='Admin/'>

Навигация находится в общей папке, и она строго типизирована. Есть идеи? Я боролся с этим уже около часа

Спасибо за любой вклад

EDIT
это всего лишь один из тех моментов, что я такой глупый. Потому что ссылка перестала быть только <a href='Admin/', потому что это ссылка по умолчанию (как значения маршрута по умолчанию). Я заметил это, когда я добавил больше ссылок на навигацию администратора, и они были в порядке. Надеюсь, это поможет кому-нибудь в той же ситуации, что и я.



Интересно, как мне поступить, если я сам придумаю решение?

1 Ответ

0 голосов
/ 12 апреля 2011

Потому что ссылка перестала быть только <a href='Admin/', потому что это ссылка по умолчанию (как значения маршрута по умолчанию)Так что на самом деле никаких проблем здесь. Индекс всегда пропадал, приводя к «пустой» ссылке.

...