protected override void Page_Load(object sender, EventArgs e) { // Llamo a la clase base para gestionar que tenga sesión base.Page_Load(sender, e); // Leo la variable pasada por query string string _idUsuario = Request.QueryString["id"].ToString(); if ( int.TryParse(_idUsuario, out mIdUsuario) ) { if ( !IsPostBack ) { // Obtengo el usuario actual de la sesión int miUsuario = LRegistro.IdUsuario(Session); // Instancio la base de datos using ( LigoteaEntities bd = new LigoteaEntities() ) { gvConversacion.DataSource = bd .buscarMensajes(miUsuario, mIdUsuario) .ToList(); gvConversacion.DataBind(); } // using } // !IsPostBack } // if }
/// <summary> /// Sobrecarga el método Page_Load de PaginaConectada /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected override void Page_Load(object sender, EventArgs e) { // Llamo al método Page_Load de la clase base (PaginaConectada) base.Page_Load(sender, e); if ( !IsPostBack ) { // Capturo la variable "id" QueryString de la URL ficha.aspx?id=... string _idUsuario = Request.QueryString["id"].ToString(); int idUsuario = 0; if ( int.TryParse( _idUsuario, out idUsuario ) ) { // Instancio el contexto de datos Ligotea using ( LigoteaEntities bd = new LigoteaEntities() ) { Usuario miUsuario = bd.buscarUsuario(idUsuario); if ( miUsuario!=null ) { // 1: Añado la visita al usuario Visita nuevaVisita = new Visita(); nuevaVisita.Fecha = DateTime.UtcNow; nuevaVisita.IdVisitado = miUsuario.IdUsuario; nuevaVisita.IdVisitante = LRegistro.IdUsuario(Session); // 1.1 Añado a la tabla bd.Visitas.Add(nuevaVisita); // 1.2 Grabo en BD bd.SaveChanges(); // 2: Cargo los controles de servidor liNick.Text = miUsuario.Nick; liEdad.Text = miUsuario.Edad.ToString(); liDescripcion.Text = miUsuario.Descripcion; // Si no tienen ninguna imagen muestro la imagen genérica if ( miUsuario.Fotos.Count==0 ) { StringBuilder sbImagen = new StringBuilder() .AppendFormat("img/sex{0}.jpg", (int)miUsuario.TGenero); imgUsuario.ImageUrl = sbImagen.ToString(); } } } // using } // if } // IsPostcast }
/// <summary> /// Inserta un mensaje en la base de datos /// </summary> /// <param name="idUsuarioEmisor">Fulano que envía</param> /// <param name="idUsuarioReceptor">Mengano que recibe</param> /// <param name="texto">Texto que se le manda</param> /// <returns>Instancia del mensaje creado</returns> public static Mensaje Enviar( int idUsuarioEmisor, int idUsuarioReceptor, string texto ) { Mensaje miMensaje = new Mensaje(); miMensaje.IdUsuarioEnvia = idUsuarioEmisor; miMensaje.IdUsuarioRecibe = idUsuarioReceptor; miMensaje.Texto = texto; miMensaje.Fecha = DateTime.UtcNow; using ( LigoteaEntities bd = new LigoteaEntities() ) { bd.Mensajes.Add(miMensaje); bd.SaveChanges(); } // using return miMensaje; }
protected override void Page_Load(object sender, EventArgs e) { base.Page_Load(sender, e); using ( LigoteaEntities bd = new LigoteaEntities() ) { Usuario miUsuario = bd.buscarUsuario(LRegistro.IdUsuario(Session)); lvVisitas.DataSource = miUsuario .VisitasRecibidas .OrderByDescending(d => d.Fecha) .Select( d => d.UsuarioVisitante ) .ToList(); //lvVisitas.DataBind(); } // using lvVisitas.DataBind(); }
protected override void Page_Load(object sender, EventArgs e) { base.Page_Load(sender, e); using ( LigoteaEntities bd = new LigoteaEntities() ) { Usuario miUsuario = bd.buscarUsuario(LRegistro.IdUsuario(Session)); lvVisitas.DataSource = miUsuario .VisitasRecibidas .OrderByDescending(d => d.Fecha) .ToList(); // Si pongo el DataBind fuera al acceder a campos // existentes en otras tablas da un error lvVisitas.DataBind(); } // using //lvVisitas.DataBind(); }
protected override void Page_Load(object sender, EventArgs e) { base.Page_Load(sender, e); if ( !IsPostBack ) { int idMiusuario = LRegistro.IdUsuario(Session); using ( LigoteaEntities bd = new LigoteaEntities() ) { gvMensajes.DataSource = bd .buscarMensajes( LRegistro.IdUsuario(Session) ) .ToList(); gvMensajes.DataBind(); gvMensajes2.DataSource = bd.Mensajes .Where(d => d.IdUsuarioRecibe == idMiusuario) //.Select( d => new // { // MyNick = d.UsuarioEmisor.Nick, // Totales = d.UsuarioEmisor.MensajesEnviados.Count // } .Select(d => new ClaseTemporal() { MyNick = d.UsuarioEmisor.Nick, Total = d.UsuarioEmisor.MensajesEnviados.Count } ) .ToList(); gvMensajes2.DataBind(); } // using } // PostBack }
protected override void Page_Load(object sender, EventArgs e) { base.Page_Load(sender, e); // No es acción de usuario, es primera carga if ( !IsPostBack ) { // Obtengo el idUsuario de la sesión int idUsuario = LRegistro.IdUsuario(Session); // Hago la instancia con el Contexto de Datos para // abrir la conexión con la BD using ( LigoteaEntities bd = new LigoteaEntities() ) { lvRecientes.DataSource = bd .buscarRecientes(idUsuario) .ToList(); lvRecientes.DataBind(); } // acaba el using y destruye el objeto bd con el contexto de // datos cerrando la conexión } // !IsPostBack }
/// <summary> /// Alta de un usuario /// </summary> /// <param name="nombre"></param> /// <param name="password"></param> /// <param name="email"></param> /// <param name="fechaNacimiento"></param> /// <param name="genero"></param> /// <param name="busco"></param> /// <returns></returns> public static Usuario Alta(string nombre, string password, string email, DateTime fechaNacimiento, UsuarioGenero genero, UsuarioEstadoBusqueda busco) { Usuario nuevoUsuario = null; using ( LigoteaEntities bd = new LigoteaEntities() ) { nuevoUsuario = new Usuario(); nuevoUsuario.Nick = nombre; nuevoUsuario.Password = password; nuevoUsuario.Email = email; nuevoUsuario.Nacimiento = fechaNacimiento; if (genero == UsuarioGenero.Masculino) nuevoUsuario.Genero = false; else nuevoUsuario.Genero = true; // Es lo mismo que lo anterior // If abreviado //nuevoUsuario.Genero = (genero == UsuarioGenero.Masculino) ? false : true; if (busco == UsuarioEstadoBusqueda.BuscoHombre) nuevoUsuario.Estado = false; else if (busco == UsuarioEstadoBusqueda.BuscoMujer) nuevoUsuario.Estado = true; else nuevoUsuario.Estado = null; //nuevoUsuario.FechaAlta = DateTime.UtcNow; // Lo guardo en la tabla: es una tabla en memoria bd.Usuarios.Add(nuevoUsuario); // Le digo a la Base de Datos que grabe los cambios bd.SaveChanges(); } return nuevoUsuario; }
/// <summary> /// Login de usuario /// </summary> /// <param name="nick"></param> /// <param name="password"></param> /// <returns>Un objeto usuario si los datos eran correctos, null EOC </returns> public static Usuario Login(string nick, string password) { // Declaro Usuario. // La variable puede llamarse usuario por ser sensible c# a mayúsculas y minúsculas Usuario usuario = null; using ( LigoteaEntities bd = new LigoteaEntities() ) { usuario = bd.Usuarios .FirstOrDefault(d => d.Nick == nick && d.Password == password); } return usuario; }