ASP.NET - Problema con variable de sesion

 
Vista:

Problema con variable de sesion

Publicado por Ezequiel (8 intervenciones) el 13/08/2018 15:34:56
Buenos días, mi problema es el siguiente. Tengo una aplicacion Web Form en la que desde una página Convenios.aspx llamo a una funcion con nombre GetPermisos. El codigo que pongo en dicho form es el siguiente:

SistemasAcler.Controllers.ConexionController acler = new SistemasAcler.Controllers.ConexionController();

Response.Write(acler.getPermisos("O"));

El tema es que cuando lo ejecuto me tira la siguiente excepcion:
Detalles de la excepción: System.NullReferenceException: Referencia a objeto no establecida como instancia de un objeto.

Error de código fuente:
Línea 46:
Línea 47: //bool exito = false;
Línea 48: String aplic = (String) Session["aplic"];


Al parecer indica que la variable session["aplic"] viene sin un dato. La paradoja es que si traigo la respuesta de esa variable de la siguiente manera
String aplic = (String) Session["aplic"];
Response.Write(aplic);
Me trae bien el texto que quiere traer.

La sesion me la trae bien cuando hago el Login, incluso si la funcion getPermisos la pongo en Convenios.cs (que es el cs del archivo aspx del cual llamo la funcion) me la trae bien. El tema es que yo quiero poner esta funcion en una clase general porque por cada pestaña del sistema voy a tener que llamarla, de lo contrario me obligaria a copiar la funcion en todos los archivos cs de cada aspx y no es practico en cuanto a diseño pero bueno si lo tengo que hacer lo hare.
Me da a entender que desde un aspx no le esta gustando mucho acceder a la funcion de un controlador en la cual tiene una sesion, pues no me pasa lo mismo si traigo una funcion con un mensaje simple desde el controlador.


Alguna sugerencia al respecto?? Gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Problema con variable de sesion

Publicado por Ezequiel (8 intervenciones) el 13/08/2018 17:36:20
Lo pude solucionar metiendole la variable de sesion en el parametro de la funcion
[url]Response.Write(site.getPermisos2("W", Session["aplic"].ToString()));[/url]

Al parecer desde el controlador se perdia la variable de sesion, no asi en la pagina aspx. Es raro el error la verdad.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar