Foros del Web » Programación para mayores de 30 ;) » .NET »

[SOLUCIONADO] Variables no cambian

Estas en el tema de Variables no cambian en el foro de .NET en Foros del Web. Hola tod@s. el problema que tengo es que al pareces se queda cachado el contenidos de las variables que utilizo en mi sitio. El código ...
  #1 (permalink)  
Antiguo 22/01/2014, 11:25
Avatar de lair  
Fecha de Ingreso: enero-2009
Ubicación: header('Location: Morelia");
Mensajes: 1.052
Antigüedad: 15 años, 3 meses
Puntos: 46
Pregunta Variables no cambian

Hola tod@s.

el problema que tengo es que al pareces se queda cachado el contenidos de las variables que utilizo en mi sitio.

El código es el siguiente.

Tengo una clase en la carpeta AppCode:
Código C#:
Ver original
  1. namespace mi.nameSpace{
  2.     public class Constantes
  3.     {
  4.         public static String pruebaLectura = Utilidades.LeerContenido("archivo.txt", "ruta");
  5.     }
  6. }

la clase Utilidades está de la siguiente manera ( en la misma carpeta AppCode ):
Código C#:
Ver original
  1. namespace mi.nameSpace{
  2.  
  3.     public class Utilidades
  4.     {
  5.         public static String LeerContenido(String archivo, String ruta)
  6.         {
  7.             String strContenidoCompleto = "";
  8.  
  9.             try
  10.             {
  11.                 String strPath = String.Format(
  12.                             "~/contenidos-estaticos/{0}/{1}",
  13.                             ruta,
  14.                             archivo
  15.                         );
  16.                 strContenidoCompleto = File.ReadAllText(
  17.                     HttpContext.Current.Server.MapPath(strPath)
  18.                 );
  19.             }
  20.             catch (Exception ex)
  21.             {
  22.                 strContenidoCompleto = ex.ToString();
  23.             }
  24.  
  25.             return strContenidoCompleto;
  26.         }
  27.     }
  28. }

lo que he notado al debuguear es que al método "Utilidades.LeerContenido" solo entra la primera vez que corro el proyecto, en los request siguientes ya no se detienen en el break point.

hay alguna manera de forzar a que vuelva a leer el archivo? la verdad no se ni como buscar este problema que estoy teniendo.

saludos y gracias por su tiempo.





EDITO:
Si coloco el código del método "Utilidades.LeerContenido" directo en el aspx.cs funciona perfectamente.

Edito: Solucionado.
lo que hice fue cambiar la definición de pruebaLectura para que quedara así.
public String pruebaLectura (sin static)
y para accederla creo una nueva instancia de la clase.

Saludos.

Última edición por lair; 22/01/2014 a las 16:53 Razón: agrégo información
  #2 (permalink)  
Antiguo 23/01/2014, 01:41
Avatar de Malenko
Moderador
 
Fecha de Ingreso: enero-2008
Mensajes: 5.323
Antigüedad: 16 años, 3 meses
Puntos: 606
Respuesta: Variables no cambian

El error se debía precisamente a que al declarar una variable como estática estás pidiendo que su valor no cambie entre instancias. Por eso mismo mantenía el valor y al eliminar el atributo "static" te ha vuelto a funcionar :)
__________________
Aviso: No se resuelven dudas por MP!

Etiquetas: variables
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:59.