Questo argomento non è stato ancora valutato - Valuta questo argomento

Proprietà HttpWebClientProtocol.CookieContainer

Aggiornamento: novembre 2007

Ottiene o imposta l’insieme di cookie.

Spazio dei nomi:  System.Web.Services.Protocols
Assembly:  System.Web.Services (in System.Web.Services.dll)

public CookieContainer CookieContainer { get; set; }
/** @property */
public CookieContainer get_CookieContainer()
/** @property */
public  void set_CookieContainer(CookieContainer value)

public function get CookieContainer () : CookieContainer
public function set CookieContainer (value : CookieContainer)

Valore proprietà

Tipo: System.Net.CookieContainer

Oggetto CookieContainer che rappresenta i cookie per un client di servizi Web.

Se un metodo di servizio Web XML utilizza lo stato sessione, al client di servizi Web XML viene restituito un cookie nelle intestazioni di risposta che identifica in modo univoco la sessione relativa al client di servizi Web XML in questione. Per fare in modo che un servizio Web XML mantenga lo stato di sessione per un client, il client deve memorizzare il cookie. I client ricevono il cookie HTTP creando una nuova istanza di CookieContainer e assegnandola alla proprietà CookieContainer della classe proxy prima di eseguire la chiamata al metodo del servizio Web XML. Se è necessario mantenere lo stato di sessione anche dopo che la classe proxy è uscita dall'area di validità, il client deve memorizzare il cookie HTTP tra le chiamate al servizio Web XML. Un client Web Form, ad esempio, può memorizzare il cookie HTTP salvando l'oggetto CookieContainer nel proprio stato di sessione. Poiché non tutti i servizi Web XML utilizzano lo stato di sessione e pertanto ai client non viene sempre richiesto di utilizzare la proprietà CookieContainer di un proxy client, è necessario che la documentazione relativa al servizio Web XML specifichi se viene utilizzato lo stato di sessione.

Nell'esempio di codice riportato di seguito viene presentato un client Web Form di un servizio Web XML che utilizza lo stato di sessione. Il client mantiene il cookie HTTP che consente di identificare in modo univoco la sessione memorizzandola nello stato di sessione del client.

<%@ Page Language="C#" %>
<%@ Import Namespace="System.IO" %>
<%@ Import Namespace="System.Net" %>

<html>

    <script runat="server">

        void EnterBtn_Click(Object Src, EventArgs E) 
	{
	  // Create a new instance of a proxy class for your XML Web service.
	  ServerUsage su = new ServerUsage();
          CookieContainer cookieJar;

	  // Check to see if the cookies have already been saved for this session.
	  if (Session["CookieJar"] == null) 
	    cookieJar= new CookieContainer();
          else
	   cookieJar = (CookieContainer) Session["CookieJar"];

		// Assign the CookieContainer to the proxy class.
		su.CookieContainer = cookieJar;

	  // Invoke an XML Web service method that uses session state and thus cookies.
	  int count = su.PerSessionServiceUsage();         

	  // Store the cookies received in the session state for future retrieval by this session.
	  Session["CookieJar"] = cookieJar;

          // Populate the text box with the results from the call to the XML Web service method.
          SessionCount.Text = count.ToString();  
        }

    </script>
    <body>
       <form runat=server ID="Form1">

             Click to bump up the Session Counter.
             <p>
             <asp:button text="Bump Up Counter" Onclick="EnterBtn_Click" runat=server ID="Button1" NAME="Button1"/>
             <p>
             <asp:label id="SessionCount"  runat=server/>

       </form>
    </body>
</html>


Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition , Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

.NET Framework e .NET Compact Framework non supportano tutte le versioni di ciascuna piattaforma. Per un elenco delle versioni supportate, vedere Requisiti di sistema di .NET Framework.

.NET Framework

Supportato in: 3.5, 3.0, 2.0, 1.1, 1.0
Il documento è risultato utile?
(1500 caratteri rimanenti)

Aggiunte alla community

AGGIUNGI
© 2013 Microsoft. Tutti i diritti riservati.