|
 |
aspx_espanol thread: Acceso a Libreria de Clase con Estructura Publica
Message #1 by "Valeria Lasagna" <valerial@f...> on Wed, 13 Nov 2002 09:35:47 -0300
|
|
Hola, necesito saber como crear una instancia a mi Estructura Persona por
cada Persona que ingresa con login y pass el cual verifico contra la BD.
Me esta pasando que me quedan los datos siempre de la ultima persona que ingresa,
perdiendo los datos de la persona previamente logoneada desde otra maquina.
Necesito tener N instancias ( 1 por cada persona). Como debo definir la estructura ?
Tal vez falta algun NEW() en la definicion en mi clase Persona? A continuacion les detallo la Clase.
Estoy accediendo a la clase asi:
- Desde la pagina Login.aspx:
Dim clase As New PersonasNET.ClasePersonas(Session("PersID"))
If Not IsPostBack Then
'Inicializo la Estructura Persona
clase.LlenarEstructuraPersona()
End If
- Desde el resto de las paginas simplemente accedo a la clase Persona sin enviar el Session("PersID")
(ya esta cargada la estructura Persona)
Dim PersClase As New PersonasNET.ClasePersonas()
'Accedo la Estructura Pesona por unica vez
PersClase.Apellido
PersClase.Nombre
------------------------------------------------------------------------------------------------------------------------------------
------------------
Mi Libreria de Clase es:
Public Class ClasePersonas()
Public Shared dsPer As DataSet
Public Shared Persona As TipoPersona
Public Structure TipoPersona
Private m_ID As Integer
Private m_Apellido As String
Private m_Nombres As String
Public Property ID() As Integer
Get
Return m_ID
End Get
Set(ByVal Value As Integer)
m_ID = Value
End Set
End Property
Public Property Apellido() As String
Get
Return m_Apellido
End Get
Set(ByVal Value As String)
m_Apellido = Value
End Set
End Property
Public Property Nombres() As String
Get
Return m_Nombres
End Get
Set(ByVal Value As String)
m_Nombres = Value
End Set
End Property
End Structure
Public Sub New()
End Sub
Public Sub New(ByVal PersID As Integer)
Me.New()
Me.Persona.ID = PersID
End Sub
Public Sub LlenarEstructuraPersona()
dsPer .Tables.Add(oSrv.TraerDataTable("SP_DatosPersonales", Persona.ID))
dsPer .Tables(0).TableName = "DatosPersonales"
With dsPer .Tables("DatosPersonales").Rows(0)
'Datos Personales
Persona.Apellido = .Item("Per_Apellido")
Persona.Nombres = .Item("Per_Nombres")
End With
End Sub
End Class
Atte, Valeria.
|
|
 |