Поддерживать SessionID для всего приложения в ASP.NET - PullRequest
0 голосов
/ 08 апреля 2010

Я реализую проекты электронной коммерции, где мне нужно статический SessionID, есть ли способ сохранить SessionID во всем приложении. Объяснение моего вопроса здесь session.sessionid в asp.net? но как я могу реализовать этот подход.

Ответы [ 2 ]

2 голосов
/ 08 апреля 2010

Теперь я понимаю вашу точку зрения

вы должны сделать что-то подобное в файле Global.asax

protected void Session_Start(Object sender, EventArgs e)
{
  Session["DummyData"] = "dummy";
}

Добавляя любое значение к объекту Session в самый первый момент после создания, вы избегаете получать разные SessionID, потому что объект Session еще не был доступен.

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

0 голосов
/ 08 апреля 2010

Читая другой пост, о котором вы упомянули, похоже, что ни один из сеансов не использовался, и поэтому при каждом запросе генерировался новый идентификатор сеанса. Чтобы это исправить, просто сохраните что-нибудь (что-нибудь) в сеансе при первом запросе, чтобы убедиться, что оно придерживается.

Session["something"] = "anything";

Или, возможно, пользователь не разрешил использование файлов cookie, что также приведет к новому сеансу при каждом запросе. Таким образом, ваши пользователи должны разрешить куки.

Или вы можете использовать сеанс без файлов cookie.

Другой пост объясняет это довольно хорошо, я думаю.

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