2010-01-21 18 views
3

У меня есть простой веб-сайт. Почти каждое действие принимает int toonId как аргумент (toonId не приравнивает пользователя: один пользователь может владеть несколькими toons).
В настоящее время я предоставляю это значение каждому виду контроллера, и каждая кнопка ссылки и отправки отправляет это значение обратно на контроллер.
Это работает. Я просто ищу более простой способ сделать это (АОП приходит на ум).ASP.NET MVC: создать значение окружения

Я использую файлы cookie для сохранения «избранного/по умолчанию toon», и это отлично работает (используется с ActionAttribute, который принимает toonId из файла cookie и передает его в аргумент toonId, если toonId не был предоставлен). Но я хочу также поддерживать сеансы cookie-less.

Вопрос: Что является простым способом добавить переменную окружения на страницу, не передавая ее явно на всем протяжении? Таким образом, он будет работать с браузерами без файлов cookie.

Is Viewstate способ пойти (который не должен находиться в MVC)?
Есть ли сеанс на стороне сервера?

ответ

0

Это именно то, для чего предназначена сессия.

В asp.net mvc нет жизненного цикла страницы, поэтому нет viewstate.

0

Я считаю, что вы можете автоматически передавать параметры строки запроса для использования браузеров без файлов cookie, если вы подключаете свою собственную реализацию IRouteHandler. Однако я не пробовал. Я нашел an example реализации IRouteHandler, хотя он не показывает, как реализовать функциональность параметра строки запроса.

0

Я не понимаю, что означает «toonid». Если это «окружающая среда для сеанса пользователя», то, как заявила womp, состояние сеанса будет хорошо работать для этого. Однако, если это somethign имеет большую область действия (например, коллектив тоноидов, к которым обычно обращаются все пользователи), тогда кеш будет лучшей и более масштабируемой стратегией.

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