Czy istnieje różnica między Session.Clear()
i Session.RemoveAll()
?Session.Clear() vs. Session.RemoveAll()
Opisy i strony dokumentacji wydają się mówić dokładnie to samo, ale Zakładam, że musi istnieć jakiś powód do stworzenia dwóch funkcji, czy mam rację?
Uwaga: Wyczyść i Usuń wszystko tylko usuń wszystkie wpisy (użytkownik zachowuje ten sam identyfikator SessionId); Abandon kończy całą sesję (użytkownik otrzymuje nowy SessionId). –
Odpowiedź Darina Dymitrowa powinna być zaznaczona jako odpowiedź, ponieważ naprawdę dotyczy tego, o co prosiła. To w rzeczywistości nie odpowiada na pytanie, które pyta o różnicę między tymi dwoma metodami, i faktycznie daje słabą odpowiedź, ponieważ sugeruje wywołanie Clear i RemoveAll, gdy są one funkcjonalnie identyczne, a zatem zbędne. – mtazva
Również .Abandon() działa tylko na końcu żądania, więc wywołanie Session.Abandon(), a następnie Session.Add ("foo", bar) spowodowałoby przerwanie sesji. Nie wywołuj każdej metody za każdym razem, ponieważ działa ona przez większość czasu. – DaveD