SessionStateStoreProviderBase.CreateUninitializedItem Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Ajoute un nouvel élément d'état de session au magasin de données.
public:
abstract void CreateUninitializedItem(System::Web::HttpContext ^ context, System::String ^ id, int timeout);
public abstract void CreateUninitializedItem (System.Web.HttpContext context, string id, int timeout);
abstract member CreateUninitializedItem : System.Web.HttpContext * string * int -> unit
Public MustOverride Sub CreateUninitializedItem (context As HttpContext, id As String, timeout As Integer)
Paramètres
- context
- HttpContext
HttpContext pour la requête actuelle.
Exemples
Pour obtenir un exemple d’implémentation d’un fournisseur de magasin d’état de session, consultez Implémentation d’un fournisseur de magasin d'Session-State.
Remarques
La CreateUninitializedItem méthode est utilisée avec les sessions lorsque les attributs et regenerateExpiredSessionId
sont à la cookieless
fois true
. Le fait d’avoir défini sur regenerateExpiredSessionId attribute
entraîne la SessionStateModule génération d’une nouvelle SessionID valeur par l’objet lorsqu’une valeur expirée SessionID est rencontrée.true
Le processus de génération d’une nouvelle SessionID valeur nécessite de rediriger le navigateur vers une URL qui contient la valeur nouvellement générée SessionID . La CreateUninitializedItem méthode est appelée lors de la requête initiale qui contient une valeur expirée SessionID . Une fois que l’objet SessionStateModule a acquis une nouvelle SessionID valeur pour remplacer la valeur expirée, il appelle la CreateUninitializedItem méthode pour ajouter une entrée non initialisée au magasin de données d’état de session. Le navigateur est ensuite redirigé vers l’URL contenant la valeur nouvellement générée SessionID . L’existence de l’entrée non initialisée dans le magasin de données de session garantit que la requête redirigée qui inclut la valeur nouvellement générée n’est pas confondue SessionID avec une demande pour une session expirée et qu’elle est, à la place, traitée comme une nouvelle session.
L’entrée non initialisée dans le magasin de données de session est associée à la valeur nouvellement générée SessionID et contient uniquement des valeurs par défaut, y compris une date et une heure d’expiration et une valeur qui correspond au actionFlags
paramètre des GetItem méthodes et GetItemExclusive . L’entrée non initialisée dans le magasin d’état de session doit inclure une valeur égale à la valeur d’énumération actionFlags
InitializeItem . Cette valeur est transmise à l’objet SessionStateModule par les GetItem méthodes et GetItemExclusive et informe l’objet SessionStateModule que la session active est une session nouvelle mais non initialisée. L’objet SessionStateModule initialise ensuite la nouvelle session et déclenche l’événement Session_OnStart
.
Pour plus d’informations sur les sessions sans cookie, consultez la IsCookieless propriété .