Я предлагаю вам использовать MVC Sitemap provider и хлебного мякиша следы от него. Вам нужно будет создать поставщик динамического узла, но это довольно просто - просто следуйте the steps to use Dynamic Nodes
Один из трюков при построении динамических узлов заключается в том, чтобы убедиться, что вы заходите через каждый узел на каждом уровне, но добавляете его к узлам коллекция наверху.
var nodes = new List<DynamicNode>();
foreach (var eventCategory in eventCategories)
{
var node = new DynamicNode
{
Key = string.Format("{0}_{1}", "home_events", eventCategory.Name),
ParentKey = "home_events",
Title = pluralize.Pluralize(eventCategory.Name),
Description = eventCategory.Description,
Controller = "event",
Action = "category"
};
node.RouteValues.Add("slug", eventCategory.Slug);
nodes.Add(node);
foreach (var e in eventCategory.Events)
{
var eventNode = new DynamicNode
{
Key = string.Format("{0}_{1}", eventCategory.Name, e.Name),
ParentKey = node.Key,
Title = e.Name,
Controller = "event",
Action = "event"
};
eventNode.RouteValues.Add("categorySlug", eventCategory.Slug);
eventNode.RouteValues.Add("slug", e.Slug);
nodes.Add(eventNode);
}
}
, а затем это просто случай положить сухари в этом, как
Html.MvcSiteMap().SiteMapPath()
Главная> События> марафоны> мельбурн марафон
ли вы когда-нибудь найти решение? Я тоже что-то искал – dreza
Dreza, я видел много людей, использующих SiteMap. Кажется, он выполняет эту работу, но выглядит довольно сложно. Я решил просто иметь раздел на странице, который только что заполнил соответствующие ссылки. На странице макета были сохранены основные теги ul для списка. Просто мне показалось проще. –
Приветствия. Да, я заглянул в карту сайта и даже использовал ее немного, но у меня было множество проблем, пытаясь заставить ее работать, поэтому не уверен, что это стоит усилий. – dreza