Foros del Web » Programando para Internet » ASPX (.net) »

[SOLUCIONADO] no puedo crear variable de Session c#

Estas en el tema de no puedo crear variable de Session c# en el foro de ASPX (.net) en Foros del Web. ayuda compañeros, necesito crear una pagina con loguin, no hay problema con eso, pero necesito guardar el usuario en una variable para depues obtener informacion ...
  #1 (permalink)  
Antiguo 04/01/2015, 16:55
 
Fecha de Ingreso: marzo-2007
Mensajes: 14
Antigüedad: 17 años, 1 mes
Puntos: 0
no puedo crear variable de Session c#

ayuda compañeros, necesito crear una pagina con loguin, no hay problema con eso, pero necesito guardar el usuario en una variable para depues obtener informacion de ese usuario,

Este es mi codigo, si alguien tiene como explicarlo o agregar la mejor, muchas gracias
Código:
 OleDbConnection conne = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|baconwp.accdb");
            conne.Open();
            OleDbCommand cmd = new OleDbCommand("select usuario, password from tlausers where usuario=@username and password=@password", conne);
            cmd.Parameters.AddWithValue("@usuario", txtu.Text);
            cmd.Parameters.AddWithValue("@password", txtp.Text);
            OleDbDataAdapter da = new OleDbDataAdapter(cmd);
            DataTable tb = new DataTable();
            da.Fill(tb);
            
            if (tb.Rows.Count > 0)
            {

                Response.Redirect("Default.aspx");
                
            }
            else
            {
                ClientScript.RegisterStartupScript(Page.GetType(), "validation", "<script language='javascript'>alert('usuario y contraseña incorrectos')</script>");
            }
  #2 (permalink)  
Antiguo 04/01/2015, 23:35
Avatar de Malenko
Moderador
 
Fecha de Ingreso: enero-2008
Mensajes: 5.323
Antigüedad: 16 años, 3 meses
Puntos: 606
Respuesta: no puedo crear variable de Session c#

Donde tienes la complicación/problema en la creación de la variable de Session?

Es algo tan sencillo como:

Código:
Session["usuario"] = txtu.Text;
__________________
Aviso: No se resuelven dudas por MP!
  #3 (permalink)  
Antiguo 05/01/2015, 15:41
 
Fecha de Ingreso: marzo-2007
Mensajes: 14
Antigüedad: 17 años, 1 mes
Puntos: 0
Respuesta: no puedo crear variable de Session c#

gracias Malenko por tu pronta respuesta, pero por ejemplo, si depues necesito de esa tabla algun otro dato por ejemplo "correo" y mostrarselo al usuario, como podria mostrarselo,
  #4 (permalink)  
Antiguo 07/01/2015, 07:42
Avatar de murdoc92  
Fecha de Ingreso: mayo-2012
Ubicación: Santiago
Mensajes: 58
Antigüedad: 12 años
Puntos: 3
Respuesta: no puedo crear variable de Session c#

Está bien lo que te dice Malenko.

Guardalo de esta manera:

Session["datosUsuarios"] = dt;

Si quieres recuperar los datos tienes que hacer algo como esto:

DataTable datosUsuario = (DataTable)Session["datosUsuarios"];
string usuario = datosUsuario.Rows[0]["usuario"].ToString(); // El 0 indica la fila y "usuario" indica la columna.
string mail = datosUsuario.Rows[0]["mail"].ToString();
__________________
Erick Muñoz | Analista Programador Integral.
www.tamper.cl | Comunidad de informáticos de Chile
www.facebook.com/erick.munozsalinas
  #5 (permalink)  
Antiguo 07/01/2015, 14:48
 
Fecha de Ingreso: marzo-2007
Mensajes: 14
Antigüedad: 17 años, 1 mes
Puntos: 0
Respuesta: no puedo crear variable de Session c#

gracias murdco92 lo intentare, te comecnto un poco mas tarde.. gracias por tu pornto respuesta
  #6 (permalink)  
Antiguo 07/01/2015, 15:22
 
Fecha de Ingreso: marzo-2007
Mensajes: 14
Antigüedad: 17 años, 1 mes
Puntos: 0
Respuesta: no puedo crear variable de Session c#

gracias murdoc92, pero aun no logfre hacer eso, qui esta mi codigo de como lo intento, ayuda porfavor

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;



namespace bkhm
{
public partial class Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{

DataTable datosusuario = (DataTable)Session["datosusuario"];
string usuario = datosusuario.Rows[0]["usuario"].ToString();
lblname.Text = usuario;

}
}
}
  #7 (permalink)  
Antiguo 07/01/2015, 15:26
 
Fecha de Ingreso: marzo-2007
Mensajes: 14
Antigüedad: 17 años, 1 mes
Puntos: 0
Respuesta: no puedo crear variable de Session c#

ya listo murdoc92, ya vi mi porblema y ya lo resolvi, muchismas gracias a todos!!
  #8 (permalink)  
Antiguo 19/05/2015, 11:37
Avatar de Grost  
Fecha de Ingreso: enero-2014
Ubicación: Guatemala
Mensajes: 25
Antigüedad: 10 años, 3 meses
Puntos: 1
Respuesta: no puedo crear variable de Session c#

Saludos Joven, dado el inconveniente que tienes en temas de lógica te comparto que con el mismo problema me topé al momento de desarrollar una aplicación web para algunas entidades financieras y se hacía necesario el uso de las variables de sesión: RECOMENDACIÓN: No te recomiendo que utilices muchas variables de sesión y caer en el típico abuso de las mismas.

Trata de enfocarte en el uso de variables de sesión para elementos o información básica y no pretendas tener toda la información del usuario, empresa, rol, etc en variables de sesión ya que esto ocasionaría lentitud en tu proceso.

Si fuera necesario tener la información completa del usuario en una variable de sesión (Evitando tener varias variables de sesión) lo que puedes hacer es crear un objeto (modelado) con las propiedades que se tengan del usuario y posterior a esto parsear la variable de sesión para que herede estas propiedades, a continuación te explico y pongo el código para su mayor comprensión.

Clase Model: usuarioInfo.cs
Código:
 

Etiquetas: aspx, session, variable
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 10:14.