To może być głupie/kulawe pytanie, szczególnie po tak długiej pracy z ASP.NET :), ale muszę być tego pewien.Czy sesja ASP.NET może trwać dłużej niż aplikacja
Czy jest możliwe, aby sesja (czyli sesja ASP.NET) przeszła dłużej niż aplikacja (instancja aplikacji/domena aplikacji/zmienna aplikacji)?
Innymi słowy, jeśli Application_End jest wywoływana w pliku Global.asax, oznacza to, że nie będzie więcej aktywnej sesji? a każde nowe żądanie spowoduje Application_Start, a następnie nowe Session_Start?
Uwaga: sesja nie zawsze musi być InProc, sesja może znajdować się na serwerze stanowym lub serwerze SQL.
Szukam scenariusza z innej strony. Co się stanie, jeśli aplikacja się zakończy (powiedzmy, restartując IIS lub przetwarzając recykling itp.), Czy sesja będzie nadal aktywna? –
Jeśli przechowujesz sesję w bazie danych lub na serwerze stanowym, to tak, klient nadal będzie miał plik cookie sesji. Tak więc przy następnej wizycie i uruchomieniu aplikacji ich sesja może zostać wznowiona (ponieważ dane sesji nadal występują w stosunku do sesji). – TheCodeKing
Hmm, dzięki. Próbowałem zapisać pewne informacje dotyczące sesji w aplikacji (zmienna statyczna). Ale wygląda na to, że nie możemy zagwarantować, że zmienna statyczna zawsze będzie miała wartość dla każdej aktywnej sesji. To jest smutne :( –