Я нахожусь в процессе разработки довольно большого веб-приложения. Несколько уровней доступа были определены через ASP.NET Членство и Ролевые провайдеры. У отдельных пользователей также есть профили (которые я расширил, включив в них различную произвольную информацию).
Вопрос в том, как сохранить пользователя между постами?
Я мог бы использовать что-то вроде HttpContext.Current для хранения пользователя, но его продолжительность жизни только от одного пост-к другому. Насколько я понимаю, мне нужно будет извлечь пользовательский объект в начале постбека (OnInit / PageLoad) и затем вернуть его обратно в HttpContext в конце каждого постбека. Кажется, неэффективно.
(Интересно, смогу ли я сделать это с помощью HttpModule?)
Кроме того, несмотря на то, что в ASP.NET есть статический экземпляр CurrentUser, он просто является обычным пользователем. Мне нужно нести весь профиль (который я создал в SQL).
Напомним, вопрос: а) возможно ли расширить статический экземпляр CurrentUser, заданный ASP.NET, так, чтобы он передавал произвольную информацию при сохранении через обычные каналы? Если Нет, как я могу сохранить такую статическую информацию на протяжении всего сеанса пользователя (до тех пор, пока пользователь не выйдет из системы или не произойдет событие Session Expire / Timeout в global.asax)?
Любая помощь будет принята с благодарностью!
Спасибо!
bleepzter