ISessionIDManager.SaveSessionID(HttpContext, String, Boolean, Boolean) Methode

Definitie

Slaat een zojuist gemaakte sessie-id op in het HTTP-antwoord.

public:
 void SaveSessionID(System::Web::HttpContext ^ context, System::String ^ id, [Runtime::InteropServices::Out] bool % redirected, [Runtime::InteropServices::Out] bool % cookieAdded);
public void SaveSessionID(System.Web.HttpContext context, string id, out bool redirected, out bool cookieAdded);
abstract member SaveSessionID : System.Web.HttpContext * string * bool * bool -> unit
Public Sub SaveSessionID (context As HttpContext, id As String, ByRef redirected As Boolean, ByRef cookieAdded As Boolean)

Parameters

context
HttpContext

Het huidige HttpContext object dat verwijst naar serverobjecten die worden gebruikt voor het verwerken van HTTP-aanvragen (bijvoorbeeld de Request en Response eigenschappen).

id
String

De sessie-id.

redirected
Boolean

Wanneer deze methode wordt geretourneerd, bevat een Booleaanse waarde die is true als het antwoord wordt omgeleid naar de huidige URL met de sessie-id die is toegevoegd aan de URL; falseanders.

cookieAdded
Boolean

Wanneer deze methode wordt geretourneerd, bevat een Booleaanse waarde die is true als er een cookie is toegevoegd aan het HTTP-antwoord; falseanders.

Voorbeelden

In het volgende codevoorbeeld ziet u een gedeeltelijk geïmplementeerde SaveSessionID methode. Als uw aangepaste sessie-id-manager cookieloze sessie-id's ondersteunt, moet u een oplossing implementeren voor het verzenden en ophalen van sessie-id's in de URL, zoals een ISAPI-filter.

public void SaveSessionID(HttpContext context, string id, out bool redirected, out bool cookieAdded)
{
  redirected = false;
  cookieAdded = false;

  if (pConfig.Cookieless == HttpCookieMode.UseUri)
  {
    // Add the SessionID to the URI. Set the redirected variable as appropriate.

    redirected = true;
    return;
  }
  else
  {
    context.Response.Cookies.Add(new HttpCookie(pConfig.CookieName, id));
    cookieAdded = true;
  }
}
Public Sub SaveSessionID(context As HttpContext, _
                         id As String, _
                         ByRef redirected As Boolean, _
                         ByRef cookieAdded As Boolean) _
  Implements ISessionIDManager.SaveSessionID

  redirected = False
  cookieAdded = False

  If pConfig.Cookieless = HttpCookieMode.UseUri Then

    ' Add the SessionID to the URI. Set the redirected variable as appropriate.

    redirected = True
    Return
  Else
    context.Response.Cookies.Add(New HttpCookie(pConfig.CookieName, id))
    cookieAdded = True
  End If
End Sub

Opmerkingen

De SaveSessionID methode wordt aangeroepen door het SessionStateModule object tijdens de HttpApplication.AcquireRequestState gebeurtenis. Met SaveSessionID de methode wordt de sessie-id opgeslagen in de URL (wanneer de sessiestatus zonder cookies wordt gebruikt) of in een sessiecookion die niet verloopt.

Als het mogelijk is dat de waarde die wordt geretourneerd uit uw CreateSessionID implementatie tekens bevat die niet geldig zijn in een HTTP-antwoord of -aanvraag, moet u de methode gebruiken om de UrlEncode waarde van de sessie-id in uw SaveSessionID methode-implementatie te coderen en de UrlDecode methode om de waarde van de sessie-id in uw GetSessionID methode-implementatie te decoderen.

Van toepassing op

Zie ook