ya casi queda. tengo lo siguiente:
Este es el evento de cuando se da click al boton de iniciar sesion
Código ASP:
Ver originalprotected void LoginCtrl_Authenticate(object sender, AuthenticateEventArgs e)
{
try
{
//Aqui busco el control de login para acceder a los campos de username y password
Login logctr = (Login)this.FindControlRecursive(this, "LoginCtrl");
if ((logctr.UserName == "Lair") && (logctr.Password == "pass"))
{
e.Authenticated = true;
}
}catch(Exception ex){
Label1.Text = ex.Message;
}
}
Como no se en donde esta el control, encontre un metodo que hace una busqueda recursiva
Código ASP:
Ver originalprivate Control FindControlRecursive(Control rootControl, string controlID)
{
if (rootControl.ID == controlID) return rootControl;
foreach (Control controlToSearch in rootControl.Controls)
{
Control controlToReturn = FindControlRecursive(controlToSearch, controlID);
if (controlToReturn != null) return controlToReturn;
}
return null;
}
Por ahora solo hay dos dudas.
1) como hago para desloguearme si lo hago con la variable que me proporciona el metodo de autentificacion
AuthenticateEventArgs e
2) se puede hacer de mejor forma la busqueda del componente login ya que el propio framework tiene el metodo
FindControl
Sale Gracias.
Bueno ya casi queda.
para resolver el primero (el logout) simplemente copie y pegue el tag que trae la plantilla por defecto
Código ASP:
Ver original<asp:LoginStatus ID="HeadLoginStatus" runat="server" LogoutAction="Redirect" LogoutText="Cerrar sesión" LogoutPageUrl="~"/>
esto dentro de la seccion de
LoggedInTemplate del
LoginView
Sale y saludos