ASP.NET MVC 3 RC Html.Actionlink не создает ссылку

Как сказано в названии ...

У меня есть маршрут (первый в списке), который выглядит так:

routes.MapRoute(
    "TopicRoute", // Route name
    "forums/{forumSlug}/{topicSlug}", // URL with parameters
    new { controller = "Forums", action = "Topic"} // Parameter defaults
);

Я могу просматривать:

/forums/my-forum/my-topic

и страница загружается нормально. Но у меня есть Html.ActionLink, который выглядит так:

@Html.ActionLink(item.Title, "Topic", new { forumSlug ="my-forum", topicSlug = "my-topic" })

И он не сгенерирует для меня правильный синтаксис ссылки? Он генерирует:

<a href="">My Topic</a>

person ChadT    schedule 06.12.2010    source источник


Ответы (1)


Не забудьте контроллер:

@Html.ActionLink(item.Title, "Topic", 
    new { forumSlug ="my-forum", topicSlug = "my-topic", controller = "Forums" })

или используйте ссылку именованного маршрута:

@Html.RouteLink(item.Title, "TopicRoute", 
    new { forumSlug = "my-forum", topicSlug = "my-topic" })
person Darin Dimitrov    schedule 06.12.2010
comment
Я работаю с одним и тем же контроллером, поэтому он мне не нужен (я пробовал с обоими). Использование RouteLink также работало. - person ChadT; 06.12.2010