В приложении ASP.NET MVC 4 у меня есть представление с разбитым на страницы списком (просто простая таблица, без телерика сетки или чего-то в этом роде) Новые значения выбираются из базы данных, когда пользователь просматривает список.
В каждой строке в этой таблице есть кнопка редактирования, при нажатии на кнопку которой вам предоставляется представление для редактирования, и когда вы нажимаете кнопку Сохранить в этом представлении, вы перенаправляетесь обратно в представление с перемещаемым списком.
URL-адреса для представления списка выглядят следующим образом
http://localhost/Items/Page/1
http://localhost/Items/Page/2
Маршрут выглядит так
routes.MapRoute(
name: "ItemsList",
url :"Items/Page/{page}",
defaults: new { controller = "Items", action = "Index", page = 1 },
constraints: new {page = @"\d+"}
);
У меня такой вопрос: какой предпочтительный, наиболее распространенный способ сохранить URL-адрес ссылки, поэтому после завершения редактирования элемента я могу перенаправить пользователя обратно на правильный URL-адрес
http://localhost/Items/Page/2
, а не только
http://localhost/Items
Я пытался разделить
Request.UrlReferrer.PathAndQuery
и хранить эти значения вокруг, а затем строить URL-адрес из этих значений, но у меня есть ощущение, что есть гораздо лучшее решение этой проблемы. Есть предложения?
Обновление
Прямо сейчас я думаю, что я мог бы поместить UrlReferrer.PathAndQuery (если есть какие-либо значения) в качестве свойства модели представления для экрана редактирования, а затем использовать его при принятии решения о том, куда перенаправить после сохранения.
Есть какие-нибудь мысли об этом подходе?