Я построил страницу поиска с 5 свойствами для фильтрации. Когда пользователь нажимает на один из результатов, загружается подробная страница. Теперь я хочу предоставить кнопку «Назад», чтобы пользователь мог вернуться на страницу поиска с помощью исходного фильтра.MVC вернуться к странице с той же моделью
Я думал об использовании TempData для хранения модели фильтра. Tempdata хранится в сеансе только для одного вызова, поэтому сеанс не будет раздуваться через некоторое время.
Есть ли лучшее решение или у вас есть предложения? Дайте мне знать!
Редактировать: Страница поиска будет использовать вызовы ajax на странице, сортировать или фильтровать данные. Таким образом, все эти данные необходимо будет сохранить, если я хочу вернуться с подробной страницы. Является ли TempData лучшим способом?
Я планирую использовать вызовы ajax для поискового вызова, сортировки и фильтрации на странице поиска. Веб-сайт будет использоваться как внутреннее веб-приложение, поэтому закладка не понадобится. – Beejee
@Beejee Вы можете использовать [History API] (https://developer.mozilla.org/en-US/docs/Web/Guide/API/DOM/Manipulating_the_browser_history) и по-прежнему использовать строку запроса (потому что это очень прозрачно, что происходит, а не подвержено ошибкам по сравнению с одноразовым хранилищем на основе сеанса). В качестве альтернативы вы можете попробовать [jQuery BBQ] (http://benalman.com/projects/jquery-bbq-plugin/) в сочетании с управлением состоянием через hashbang. Вышеупомянутое решение также упрощает запись модульных тестов для вашего приложения. – volpav
Пользователь сможет сортировать по нескольким свойствам. Итак, у меня будут входные данные X-фильтра. Как вы собираетесь использовать все это в строке запроса? Обычно я всегда привязываюсь к viewmodel при использовании более двух свойств. – Beejee