2010-05-19 3 views
5

Cuando intento para comprobar Session["userId"] != null por qué me sale este mensaje Possible unintended reference comparrison; to get value comparrison; cast left hand side to string Cualquier sugerencia ....C# Posible referencia de comparación involuntaria

+0

¿Dónde y cómo se recibe ese mensaje? ¿Qué versión del compilador estás usando? Cuando compilo el código en VS 2008 no recibo ninguna advertencia. – Guffa

+0

¿Quizás el código ha sido desinfectado un poco? – slugster

+0

Esp. como el mensaje de error tiene un error tipográfico :) – pdbartlett

Respuesta

8

Session[key] devuelve un objeto , no una cadena: debería convertirla en cadena en lugar de confiar en la funcionalidad de conversión implícita o ToString().

+0

Él dice la verdad. – gingerbreadboy

1
 if(Session["userId"]!=null) 
     { 

     } 

funciona muy bien para mí

0
if (String.IsNullOrEmpty(s)) { 
     return "is null or empty"; 
} 
    else{ 

     return String.Format("(\"{0}\") is not null or empty", s); 
} 

/* verdadero si el parámetro de valor es nulo o una cadena vacía (""); de lo contrario, falso. */