Узел карты сайта на основе атрибутов не выбран

Рассмотрим эту настройку:

public class SampleController : BaseController
{
    [MvcSiteMapNode(Title = "Super Title", Key = "Super", ParentKey = "topNav")]
    public ActionResult Index()
    {
        return View();
    }

    [MvcSiteMapNode(Title = "Sub Title", ParentKey = "Super")]
    public ActionResult SubAction(Guid id)
    {
        return View();
    }
}

При переходе к SubAction Html.MvcSiteMap().SiteMap.CurrentNode всегда имеет значение null.За исключением иногда это работает только для одного Guid (я полагаю, первый запрошенный)

Зачем?

Помимо этого экземпляра он работает для всех других действий в моем проекте.

1 ответ

Решение

Мне просто нужно было добавить PreservedRouteParameters="true"

[MvcSiteMapNode(Title = "Sub Title", ParentKey = "Super", PreservedRouteParameters = "id")]
public ActionResult SubAction(Guid id)
{
    return View();
}
Другие вопросы по тегам