Pregunta

¿Cómo puedo hacer que una variable (objeto) esté disponible durante toda la vida útil del servicio web?

La variable estática parece funcionar, pero ¿hay alguna otra forma de hacerlo?

¿Fue útil?

Solución

Las variables estáticas existen durante la vida útil del dominio de la aplicación que las contiene. En el caso de un servicio web, este suele ser el Proceso de trabajo ASP.Net. Lo que eso significa es que cuando IIS decida realizar un ciclo del proceso de trabajo, su variable estática desaparecerá. Esto puede ser lo que desea, en cuyo caso probablemente sea una buena opción. (Poner a disposición discusiones sobre si las variables estáticas son adecuadas o no en un contexto dado).

Dentro del alcance de un servicio web, también tiene acceso a HttpApplicationState a través de la propiedad Aplicación (este sería un servicio asmx ... no estoy seguro si WCF es igual o no), por lo que también podría ser una buena opción para guardar algo necesario para la vida útil de un servicio.

Otros consejos

Un singleton que utiliza HttpApplicationState debería funcionar como un regalo

probablemente, pero si la variable estática funciona, pase al siguiente problema. :)

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top