no recupero valor de la property en get con varias instrucciones

01/02/2007 - 19:02 por rosana | Informe spam
Si hago perfil=1;

Este codigo me funciona

private static byte id_perfil;

public static byte perfil
{
get { return id_perfil; }
set { id_perfil = value; }
}

Si hago perfil=1;

Este codigo no me funciona value=1,id_perfil=0 pero perfil=0
no actualiza el valor.

private static byte id_perfil;

public static byte perfil
{
/// <summary>
/// recuperar los datos de la cookie en la propiedad de la Cookie
/// leerPerfil=perfil
/// </summary>
///
get
{
compruebaCookie();
id_perfil =
Convert.ToByte(p.Response.Cookies["PMECookie"].Values["perfil"]);
return id_perfil;
}
set { id_perfil = value; }

}

Preguntas similare

Leer las respuestas

#1 Alberto Poblacion
01/02/2007 - 19:13 | Informe spam
"rosana" wrote in message
news:
Este codigo no me funciona value=1,id_perfil=0 pero perfil=0
no actualiza el valor.



¿Seguro que no actualiza el valor? ¿Cómo compruebas si lo ha
actualizado? Lo digo porque si para comprobarlo lo haces leyendo el valor de
la propiedad "perfil", lo que ocurre es que se ejecuta el "get" el cual lo
primero que hace es modificar el valor que había almacenado, antes de
devolverte el valor modificado (que por tanto no es el que habías
actualizado originalmente).
Respuesta Responder a este mensaje
#2 rosana
02/02/2007 - 10:55 | Informe spam
Tengo puesta una inspeccion para explorar el contenido de la propiedad perfil.

Y le he asignado 1 y en la inspeccion dice que es 0.

Me temo que es por lo que me indicas, que el set y el get se esten llamando
internamente uno al otro en el codigo de comprobarcookie, y antes de asignar
el valor lo estoy recuperarando.

Ya que si la cookie existe el codigo funciona pero si no existe el get
perfil intenta crearla asignando valores por defecto mediante las propiedades
y le asigna un 0 en vez del 1 que le envio.

Sin embargo si hago el mismo codigo dentro de un metodo funciona a las mil
maravillas.

Gracias por la informacion.


"Alberto Poblacion" wrote:

"rosana" wrote in message
news:
> Este codigo no me funciona value=1,id_perfil=0 pero perfil=0
> no actualiza el valor.

¿Seguro que no actualiza el valor? ¿Cómo compruebas si lo ha
actualizado? Lo digo porque si para comprobarlo lo haces leyendo el valor de
la propiedad "perfil", lo que ocurre es que se ejecuta el "get" el cual lo
primero que hace es modificar el valor que había almacenado, antes de
devolverte el valor modificado (que por tanto no es el que habías
actualizado originalmente).




Respuesta Responder a este mensaje
#3 Alberto Poblacion
02/02/2007 - 17:12 | Informe spam
"rosana" wrote in message
news:
Tengo puesta una inspeccion para explorar el contenido de la propiedad
perfil.



¡Ahi está el error! Si inspeccionas "perfil" en lugar de inspeccionar
"id_perfil", al inspeccionarlo llamas al get, y el get primero usa la cookie
ara machacar el id_perfil y luego te devuelve el id_perfil. Asi que el valor
que estás inspeccionando no es el que guardaste (que se guardó correctamente
en id_perfil).
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida