Estado el acceso de aplicaciones desde fuera de una página
-
26-09-2019 - |
Pregunta
Estoy intentando acceder al estado de la aplicación de una clase de utilidad en la aplicación web, pero no estoy seguro de la mejor manera de hacerlo. Busqué un miembro estático, pero no hay nada de uso (que estaba pensando en algún lugar a lo largo de las líneas de HttpContext.Current).
La mejor solución que encontré hasta ahora es tener un miembro de la clase de utilidad que se ha inicializado en el caso de los Application_Start Global.asax.cs (I puede obtener de this.Application allí), pero habría algún riesgo de "algo" pasa a la referencia (no me importa acerca de la aplicación que se reinicia, ya que sólo estoy buscando una funcionalidad de caché)?
Solución
Creo que lo tengo!
HttpContext.Current.Application
Otros consejos
No hay manera de estado de acceso de aplicaciones desde fuera del HTTTPContext por diseño. Usando Application_Start es la forma preferida para inicializar los valores "globales". También puede utilizar la clase Cache
para el mismo propósito. expiración ofertas Cache
miembro de características que pueden ser útiles para los datos que los cambios debido a eventos tales como un valor de archivos o base de datos cambiando.
Trate
System.Web.HttpRuntime
Usted simplemente puede crear un miembro de la clase estática:
public class MyGlobalCache
{
public static string SomeValue{get;set;}
}
Esto se almacena a nivel de aplicación, lo que significa que se obtiene la misma funcionalidad del estado de la aplicación. El miembro estático estará disponible en todas las capas (páginas web y no páginas web).