ASP.NET MVC Государственное управление - PullRequest
3 голосов
/ 01 ноября 2010

Я работаю над веб-приложением .net mvc, у которого есть множество веб-частей на домашней странице. Я понимаю, что веб-часть - это терминология форм .net, но не знал, как назвать эти мини-разделы. Так или иначе, сейчас эти разделы вызываются при визуализации этой страницы, но в конце концов я подключу JQuery и вызову эти разделы с помощью AJAX. Эти мини-разделы или виджеты должны будут сохранять состояние, когда пользователь перемещается между домашней страницей и обратно. В формах .net информация о состоянии страницы сохраняется в состоянии просмотра, но в случае .net mvc это недоступно (к счастью).

Итак, уже существует инфраструктура для такой функциональности для MVC? Если нет, то как лучше всего справиться с этой ситуацией? Я думал использовать объект HttpContext и хранить там все, но не уверен, что у этого объекта есть ограничения по размеру.

Ответы [ 4 ]

2 голосов
/ 01 ноября 2010

Точно так же, как и с любым другим в MVC, вам нужно где-то хранить состояние.Как отмечали другие пользователи, использование частичных представлений уменьшит сложность конструкции, позволив вам иметь контроллеры, которые обрабатывают только эти мелкие детали.Затем они могут нести ответственность за сохранение / восстановление / отслеживание состояния или информации для этой части.(Это может быть использование базы данных, памяти процесса, чего угодно.)

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

Такое разделение частей значительно упростит их AJAXify, поскольку они уже будут работать независимоданных вашего просмотра, даже если они отображаются одновременно.

1 голос
/ 01 ноября 2010

Я думаю, что вы хотите проверить Частичное представление .

0 голосов
/ 01 ноября 2010

Вы можете использовать кэширование вывода или кэширование данных, которые поддерживаются MVC 1.0 / 2.0.

0 голосов
/ 01 ноября 2010

Не уверен, что вы после этого, но проект Orchard имеет понятие виджетов: http://www.orchardproject.net/docs/Default.aspx?Page=widgets&NS=&AspxAutoDetectCookieSupport=1.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...