Два варианта:
- Печенье
- База данных
Если эту информацию нужно хранить только в течение времени, когда пользователь вошел в систему, и вы не хотите сохранять ее, когда он возвращается, cookie-файлы будут работать нормально. Если, с другой стороны, вы хотите сохранить пользовательские настройки пользователя, вам необходимо сохранить их в базе данных или использовать постоянные файлы cookie.
Сеанс также является опцией, но будьте осторожны, если ваш сайт работает в веб-ферме - в этом случае вам потребуется сохранение сеанса вне процесса.
Как я понимаю, TempData является хорошим выбором для кратковременных временных данных и не подходит для кэширования данных в течение всего периода, в течение которого пользователь остается в системе.
Вы абсолютно правы. TempData
следует использовать только в следующем сценарии: пользователь вызывает действие контроллера, это действие контроллера сохраняет что-то в TempData и немедленно перенаправляет на другое действие контроллера (оно никогда не отображает представление), которое извлекает сохраненные данные и отображает представление (Перенаправление после сценариев POST).