Значения сеанса становятся нулевыми после того, как страница получает post-back ?
protected void Page_Load(object sender, EventArgs e) { if(!Page.IsPostBack) { Session["EmployeeName"]="Djay"; } } protected void ddlProcess_SelectedIndexChanged(object sender, EventArgs e) { try { if(Session["EmployeeName"] !=null) { // some code here } else { // every time Debugger comes here after page post back } } catch (Exception) { Response.Redirect("/SitePages/SessionExpire.aspx", false); } } What I have tried: 1. I used windows authentication (can't change to form authentication it's required ) 2. and set <sessionstate mode="InProc" customprovider="DefaultSessionProvider" timeout="60"> in web config still face issue.</sessionstate>
njammy
Код выглядит нормально, каково значение Session ["EmployeeName"], когда отладчик нажимает "else"?
Dj@y
он показывает null в quick watch
njammy
Просто проверка здравомыслия, создайте совершенно новое пустое решение и одну страницу, которая устанавливает и получает var сеанса. Ответьте здесь с результатами.
Dj@y
да, я создал одно другое приложение, использующее аутентификацию формы и устанавливающее значения сеанса при загрузке страницы внутри !ispostback, а после post back оно становится нулевым
njammy
Удалите customSessionProvider и используйте default, чтобы посмотреть, поможет ли это.
Убедитесь, что ваш раздел аутентификации Web.config выглядит аналогично:
< режим аутентификации= "формы" >
< forms loginUrl= " ~ / Login.aspx"
тайм-аут= " 2880"
cookieless= "UseCookies" />
< / аутентификация>
Dj@y
Я уже использую его
F-ES Sitecore
Это локальная машина разработчиков или опубликованный сайт? Если это опубликованный сайт на веб-хостинге, свяжитесь с веб-хостом в качестве некоторого ограничения\отключите сеанс независимо от того, что у вас есть в ваших конфигурациях. Если это локальная машина разработчика, проверьте, что файл cookie сеанса заполняется, а затем повторно отправляется со следующим запросом.
Dj@y
это на моей местной машине.
Sreekanth Mothukuru
Вы используете "панели обновления" или делаете Ajax-вызовы?
Dj@y
нет
Karthik_Mahalingam
выдает ли приложение какую-либо ошибку ? потому что после ошибки сеанс станет нулевым.