2009-09-23 3 views
1

У меня есть панель поиска с 4 каскадированными выпадающими списками на ней, пользователь делает выбор, а затем нажимает на поиск. Когда пользователь вернется на страницу поиска, я хочу, чтобы предыдущие выбранные значения все еще отображались.Лучший способ сохранить состояние сеанса в MVC

Любые комментарии о наилучшем способе сохранения этих выбранных значений?

ответ

4

Любые причины не поместить их в Querystring?

Если вы думаете о сеансе, сначала попробуйте TempData, который позаботится об утилизации сеанса для вас.

Как упоминалось в другом месте, файлы cookie в порядке, но не RESTful. С помощью Querystring поиск можно пометить. Некоторые из них используют этот подход (google и SO для обозначения двух)

+0

QueryString для победы - всегда используйте querystring для поиска. Это гораздо более дружелюбно. – sirrocco

1

Используйте файлы cookie, если временное сохранение в порядке для вас.

1

Сессия по-прежнему доступна в ASP.NET MVC. Плюс, его макет сейчас. Беспроигрышная.

0

Это то, что словарь Session для: магазин навигационных значений между страницами ...

0

Мы используем корпоративный блок приложения кэширования библиотеки:

http://msdn.microsoft.com/en-us/library/dd203099.aspx

+0

Вы используете блок кэширования для хранения пользовательских данных? Я бы понял, используя блок кэширования для кэширования, скажем, результаты поиска, поэтому повторные поиски отбрасывают кешированную копию, действительно ли вы используете ее для пользовательских данных? Если да, то как вы сопоставляете данные вместо этого от глобального к пользователю? –

+0

@Chris: Entlib основан на паре значений ключей. Если вы используете идентификатор пользователя в качестве ключа, тогда нет никаких проблем с хранением пользовательских данных. –

Смежные вопросы