Question

J'utilise Servicestack.net avec authentification et j'utilise une session personnalisée, tous fonctionnant bien.

J'aimerais savoir s'il existe un événement ou un rappel, une substitution ou tout autre mécanisme à savoir lorsqu'une session est terminée (c'est-à-dire que le client goutte) ou lorsque la session expire?

quelque chose comme global.aSax "session_end"

merci.

Était-ce utile?

La solution

Nope Il n'y a pas d'événement de session Session car il est impossible de déterminer lorsqu'une session est supprimée de l'un quelconque du support fournisseurs de cache qui pourrait être utilisé pour cacher la session.

Donc, vous ne devriez pas vraiment essayer de vous fier, vous pouvez déterminer s'il est expiré (ou n'existe vraiment plus) s'ils ont été attribués à une session existante mais qui n'existe plus, par exemple

var hadSessionWithId = httpReq.GetSessionId();
var existingSession = Cache.Get<TUserSession>(SessionExtensions.SessionKey);
if (hadSessionWithId ?? existingSession == null) //Existing session invalidated.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top