Necesito de su ayuda bueno si me kieren ayudar y si pueden claro, porke miren tengo una duda con respecto a como "implementar un control de usuario (login) ke tiene en su funcion una variable ke tiene ke ser parametrizada y ke se debe enviar su valor desde la clase de la pagina donde se implementa el control".
Chequen eee, el reto es este, hice un control de usuario de login ke tiene 3 controles ya sabran:
textbox = TxtUsuY ya se komo recuperar lo ke kapturo el usuario en los texbox y como llamar el boton del login del control, bueno todo eso esta leve porke se hace en el vb del control y es relativamente sencillo:
textbox = TxtPass
boton = btnLogin
Código:
Ok todo eso va en el vb del control y furula chido ya ke recupera el valor de los txt y puede hacer el logeo chido y asi lo implemente en la pagina:Private _usuario As String Private _contraseña As String Public ReadOnly Property Usuario() As String Get Return Me.TxtUsu.Text End Get End Property Public ReadOnly Property Contraseña() As String Get Return Me.TxtPass.Text End Get End Property 'Funcion ke retorna un objeto Public Function Login() As Object Dim oRes As Object = Nothing Dim CLusuario As New CLUsuarios Dim sRes, sUsu, sPass As String sUsu = Me.usuario sPass = Me.contraseña dim variabletiposistema as integer= 2 sRes = CLusuario.GetLogUsu(variabletiposistema, sUsu, sPass) If sRes <> "" Then LblErr.Text = sRes oRes = Nothing Else LblErr.Text = "ok" oRes = usuario End If Return oRes End Function Public Sub btnLogin_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Login() End Sub
Ok hasta aki todo chido chido chido chidooo. Pero yo necesito saber a ke sistema se kiere logear (sin tener ke pedirle al usuario mediante un combo u otro control),Código:Dim oUsu As Object = Me.WebLogin1.Login() If Not oUsu Is Nothing Then Response.Write("si existe el usuario") Else Response.Write("mojojojo") End If
a ke sistema se kiere logear por lo tanto agrege una enumeracion, para ke el developer diga aaaaaaa a este sistema se va a logear, y lo ke hice fue agregar esto:
Código:
y entonces ahora creo otra funcion pero esta parametrizada, ya ke recibe un valor de la enumeracion como parametro y entonces dicha funcion keda asi!!Enum sisMexico SDSPM = 1 SICEEF = 2 SIEP = 3 SIP = 4 SISGESCOR = 5 End Enum
Código:
y ok ahora asi es como la implemento (la hice de 2 formas, y ninguna de las 2 keda chalessss).'login parametrizado con una variable tipo enumeracion Public Function Login(ByVal Sistema As sisMexico) As Object Dim oRes As Object = Nothing If Sistema <> 0 Then Dim CLusuario As New CLUsuarios Dim sRes, sUsu, sPass As String sUsu = Me.usuario sPass = Me.contraseña sRes = CLusuario.GetLogUsu(Sistema, sUsu, sPass) If sRes <> "" Then LblErr.Text = sRes oRes = Nothing Else LblErr.Text = "" oRes = usuario End If End If Return oRes End Function
1.- por medio de funcion parametrizada con una enumeracion, no furula porke en el vb del control de usuario recibe un cero y eso no debe de ser.
Código:
pero tampoco furula en la implementacion porke la propiedad dice ke es cero y eso no debe de ser.Protected Sub LoginButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Dim oUsu As Object = Me.WebLogin1.Login(sisMexico.sistemas.SICEEF) If Not oUsu Is Nothing Then Response.Write("no existe") Else Response.Write("mojojojo") End If End Sub 2.- y por medio de una propiedad ke agrege en el vb del control de usuario, Private _sistema As Integer Public Property Sistema() As Integer Get Return _sistema End Get Set(ByVal value As Integer) _sistema = value End Set End Property 'login en base a una propiedad, sin parametros Public Function Login() As Object Dim oRes As Object = Nothing If Sistema <> 0 Then Dim CLusuario As New CLUsuarios Dim sRes, sUsu, sPass As String sUsu = Me.usuario sPass = Me.contraseña sRes = CLusuario.GetLogUsu(sistema, sUsu, sPass) If sRes <> "" Then LblErr.Text = sRes oRes = Nothing Else LblErr.Text = "" oRes = usuario End If End If Return oRes End Function
Código:
Ahora la pregunta del millon es como carambas le paso ese valor a la funcion o la clase vb del control, porke siempre obtengo un 0 en la variabe sistema de aki abajoWebLogin1.Sistema = sisMexico.sistemas.SICEEF Dim oUsu As Object = Me.WebLogin1.Login() If Not oUsu Is Nothing Then Response.Write("no existe") Else Response.Write("mojojojo") End If
CLusuario.GetLogUsu(sistema, sUsu, sPass)
!!!!!?
y pos no se me ocurre nadaaa, como ven alguna idea !!!!!?
gracias por leer el post, jejeje ,espero ke me haya dado a enteder !!!!!!
gracias por todo y adios