Я создаю сайт, используя ASP.NET MVC с большим количеством jQuery и AJAX, и мне бы хотелось, чтобы главное меню работало с AJAX, как более или менее остальная часть сайта.
В идеальном случае я бы хотел, чтобы мое главное меню
1) загрузить основной контент с помощью AJAX, если пользователь активировал JavaScript
2) изменить URL в адресной строке (чтобы включить копирование ссылки)
3) иметь мой код только в одном месте, что означает, что я не хочу иметь одинаковую разметку в .aspx View и .ascx PartialView.
Номер 1) У меня нет проблем с. Тем не менее, я понятия не имею, как мне сделать номер 2) без перезагрузки страницы. Есть идеи?
Я понимаю, что третью проблему можно решить , создав представление, визуализирующее каждый PartialView, но разве нет лучшего способа обойти это? Каким-то образом «обернуть» PartialView в Master сайта или что-то в Controller, прежде чем вернуть его клиенту?