Значение сеанса ASP.Net не меняется - PullRequest
1 голос
/ 31 марта 2009

У меня 2 страницы.

. # 1 страница: сессия ("X") получает значение из пользовательского ввода (текстовое поле), перенаправляет на страницу # 2.

. # 2 страница: отображает значение сеанса ("X") для пользователя, если пользователь хочет изменить значение, перенаправляет обратно на страницу # 1 для редактирования.

. # 1 страница: сессия ("X") загружается в исходное текстовое поле для изменения пользователем. Значение из текстового поля снова помещается в сессию («X»). Перенаправляет на страницу # 2.

. # 2 страница: сессия ("X") остается прежней. WTF?

Ответы [ 3 ]

1 голос
/ 31 марта 2009

О переменной сессии и перенаправлении, есть хороший пост по этому вопросу:

Проверьте этот пост out.

"Не перенаправлять после установки Переменная сеанса (или сделайте это правильно) "

0 голосов
/ 31 марта 2009

Похоже, что вы завернули страницу . # 1: сессия ("X") загружается в исходное текстовое поле для изменения пользователем. в! IsPostBack Таким образом, после нажатия кнопки для изменения значения страница «перезагружается» и исходное значение возвращается в текстовое поле. (так что он меняется сам по себе)

Попробуйте отладить кнопку Нажмите.

0 голосов
/ 31 марта 2009

Люди часто забывают выполнить проверку IsPostBack при загрузке своей страницы. Если вы забыли, вы можете установить Textbox back в исходное значение сеанса в PageLoad непосредственно перед вызовом обработчика Button. То есть вы можете перезаписать значение, которое пользователь только что ввел , просто , прежде чем сохранить его в сеансе. Девять раз из десяти, когда я получаю странное поведение, подобное этому, потому что я забыл проверить IsPostBack !!

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