Я добавил верхнее навигационное меню, используя MenuProvider, как показано ниже
const string MainMenuPath = "/global/master";
const string SubPath = MainMenuPath + "/sub?filter=old";
public IEnumerable<MenuItem> GetMenuItems() {
var manuItems = new List<MenuItem>();
menuItems.Add(new SectionMenuItem("Master",MainMenuPath) {
SortIndex = SortIndex.Last + 10,
}
menuItems.Add(new UrlMenuItem("Sub", SubPath, "/master/sub?filter=old")
{
SortIndex = 1,
});
return menuItems;
}
Меню выглядит нормально, но когда я выбираю «Подменю», оно показывает страницу правильно, но верхнее меню закрывается.Когда я проверял пункт меню, проблема заключалась в том, что в меню отсутствовал класс для текущего выбранного меню.
Работает, когда я изменяю свой URL в UrlMenuItem на "/ master / sub".Похоже, что он сопоставляет текст UrlMenuItem с URL, чтобы пометить текущий элемент меню как активный / выбранный.Но из-за того, что мне нужно использовать параметр запроса, похоже, проблема в его сопоставлении.Есть ли способ или обходной путь, чтобы это исправить?
Спасибо всем