Utilizando Sesiones ASP.NET

Intrinsecos (Administración de Sesiones ASP.NET y Estado de la Aplicación)

Los Servicios Web de ASP.NET nos permiten acceder a la administración de estado subyacente que proporciona ASP.NET. Para permitir el estado de sesión de ASP.NET tenemos que establecer set WebMethod.EnableSession = True. En el cliente tendremos que fijar serviceName.CookieContainer a una nueva instancia de System.Net.CookieContainer. Esto nos permite mantener los datos en la misma sesión. Observar que para mantener los datos para toda la aplicación (para todas las peticiones entrantes al servicio), no se requiere ningún paso.

Código del Lado del Cliente
//On the client you must add the following code (for session state only):
serviceName.CookieContainer = new System.Net.CookieContainer();
Código del Lado del Servidor
//Setting EnableSession to true allows state to be persisted per Session
[WebMethod(EnableSession=true)]
public String UpdateSessionHitCounter() {
//update the session "HitCounter" here
return Session["HitCounter"].ToString();
}

//Note that state can be persisted for the entire Application even if EnableSession is false
[WebMethod(EnableSession=false)]
public String UpdateApplicationHitCounter() {
//update the application "HitCounter" here
return Application["HitCounter"].ToString();
}
C# Sample Caption