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

[SOLUCIONADO] variables de sesion o variable globales?

Estas en el tema de variables de sesion o variable globales? en el foro de .NET en Foros del Web. buenos dias, tengo un problema. Estoy creando una aplicacion winform y desearia crear algo similar a las variables de session que existen en asp.net. la ...
  #1 (permalink)  
Antiguo 24/02/2016, 08:31
 
Fecha de Ingreso: enero-2015
Mensajes: 9
Antigüedad: 9 años, 3 meses
Puntos: 0
variables de sesion o variable globales?

buenos dias, tengo un problema.
Estoy creando una aplicacion winform y desearia crear algo similar a las variables de session que existen en asp.net.

la situacion es esta:

mediante un login valido usuario y la validacion me devuelve dos valores a usar en toda la aplicacion: "el codigo del usuario" y "la empresa a la cual pertenece".

Cita:
Try
If txtUsuario.Text <> String.Empty Then
If txtContraseña.Text <> String.Empty Then
dt = obj_sql.getExecSP("usp_tthh_ValidarLogueo", txtUsuario.Text, E.Encriptacion(txtContraseña.Text))
If dt.Rows.Count <> 0 Then
FM.IdEmpleado.Caption = dt.Rows.Item(0).Item("IdEmpleado")
FM.IdEmpresa.Caption = dt.Rows.Item(0).Item("IdEmpresa")

FM.Show()
Me.Hide()
Else
MessageBox.Show("Error de autenticación, verifique los datos ingresados", "ERROR", MessageBoxButtons.OK)
txtUsuario.Clear()
txtContraseña.Clear()
txtUsuario.Focus()
End If
Else
MessageBox.Show("Ingrese la contraseña para el Usuario", "ALERTA", MessageBoxButtons.OK)
txtContraseña.Focus()
End If
Else
MessageBox.Show("Ingrese el Usuario para el acceso", "ALERTA", MessageBoxButtons.OK)
txtUsuario.Focus()
End If
Catch ex As Exception
MsgBox(ex.Message)
End Try
por ahora solo lo almaceno en un control, pero no me sirve usarlo de este modo.

estos valores los tendre que usar en toda la aplicacion.

alguna idea como implementar esto?

  #2 (permalink)  
Antiguo 25/02/2016, 20:36
Avatar de emmax  
Fecha de Ingreso: agosto-2010
Ubicación: Sonora
Mensajes: 172
Antigüedad: 13 años, 8 meses
Puntos: 8
Respuesta: variables de sesion o variable globales?

Por que no te siver hacerlo asi? como manejas tus Forms? tienes un MDI? por lo que veo el Form donde tienes el control lo ocultas por lo que solo tienes que acceder a el desde otro form.

Código vb:
Ver original
  1. My.Forms.tuform.tucontrol.caption
__________________
La gente que muerde la mano que los alimenta, normalmente lame la bota que lo patea......
  #3 (permalink)  
Antiguo 26/02/2016, 04:00
Avatar de Malenko
Moderador
 
Fecha de Ingreso: enero-2008
Mensajes: 5.323
Antigüedad: 16 años, 3 meses
Puntos: 606
Respuesta: variables de sesion o variable globales?

Las variables de sesión de ASP.NET existen y tienen sentido porque el ciclo de vida de un webform es diferente al de un winform.

En una página web, entre acción y acción (por ejemplo al pulsar un botón), la página se ejecuta de nuevo con lo que las variables pierden su valor anterior. Para evitar eso existen las variables de sesión que mantienen el valor mientras esté activa la sesión del navegador.

Con un winform no tienes este problema. Tu puedes tener una variable en un formulario y cuando realizas una acción (pulsar un botón) y se ejecuta el código de tu aplicación, las variables mantienen el valor anterior.

En cualquier caso, me da la sensación que lo que quieres es poder tener variables que mantengan su valor entre diferentes forms. Una solución sería declarar dichas variables a nivel de aplicación, no de formulario.
__________________
Aviso: No se resuelven dudas por MP!
  #4 (permalink)  
Antiguo 26/02/2016, 12:11
Avatar de haggenx  
Fecha de Ingreso: febrero-2007
Ubicación: México
Mensajes: 823
Antigüedad: 17 años, 3 meses
Puntos: 24
Respuesta: variables de sesion o variable globales?

agrégale un módulo a tu proyecto, todo lo que pongas en esa sección y siempre y cuando sea de tipo publico lo podrás ver/editar a lo largo de tu programa.
__________________
Mi blog informático http://marjuanm.blogspot.mx
Fanpage del blog https://www.facebook.com/pages/Mis-p...36397183215592

Etiquetas: vb, visualbasic
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 07:51.