2011-12-14 5 views
1

У меня вопрос о статических строках и т. Д. В ASP.NET MVC.ASP.NET MVC - Статические объекты

Мне нужно сохранить строку (значение), когда пользователь проходит через приложение. Проблема в том, что я считаю, что это было бы нарушением MVC. Мне просто нужно сохранить строку для каждого пользователя, так что это похоже на нарушение разделения MVC.

спасибо.

ответ

2

мне просто нужно хранить строку для каждого пользователя

Вы можете использовать Session или Cookies которых гарантирует безопасное хранение на пользователя. Не используйте статические объекты. Они будут использоваться всеми пользователями приложения.

+0

Вся страница - это просто вызовы AJAX, любые идеи, как я это делаю? –

+0

@ReigoHein, что? Вы читали соответствующие статьи о сеансе и куки-файлах, с которыми я связан в своем ответе? –

1

Общепризнанной лучшей практикой было бы, если у вас нет конкретных требований/ограничений, использовать cookies для хранения данных, которые должны сохраняться через несколько запросов (например, строку, о которой вы говорите, или информацию аутентификации и т. Д.) И session для вещей, которые необходимо сохранить только от запроса к другому (например, данные проверки для шаблона PRG и т. д.).

Старайтесь избегать session за все, что недолго. Я не буду погружаться в детали, но вы можете легко зайти в эту тему и найти много подробных объяснений, почему это плохой выбор дизайна.

+0

На самом деле кажется, что я могу использовать сеансы, так как мне это нужно для короткоживущей строки. :) –

0

Кроме того, для поиска людей одним из вариантов является использование HttpContext.Cache (stringname) в структуре ASP.NET MVC, в настоящее время пытающийся таким образом на данный момент.

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