public override bool ValidateUser(string username, string password)
 {
     using (var db = new TS_Entities())
     {
         return((from u in db.usuarios
                 where (u.pass_usu == password && u.Nom_cor_usu == username && u.estado == true)
                 select true).Any());
     }
 }
 public static void addToCacheUSER(string actualUser, string newUser)
 {
     try
     {
         using (var db = new TS_Entities())
         {
             var user = (from u in db.usuarios
                         where (u.estado == true) &&
                         (u.Nom_cor_usu == newUser)
                         select u).FirstOrDefault();
             var roles = db.perfil_usuario.Where(o => o.id_usuario == user.id_usu).ToList();
             var n     = USERS.FirstOrDefault(p => p.user.Nom_cor_usu == actualUser);
             n.user2  = user;
             n.roles2 = roles;
         }
     }
     catch (Exception ex)
     {
     }
 }
        public override MembershipUser GetUser(string username, bool userIsOnline)
        {
            USERS.RemoveAll(p => p.SessionExpires.AddHours(2) < DateTime.Now);
            var _user = USERS.FirstOrDefault(p => p.user.Nom_cor_usu == username);

            if (_user != null && _user.SessionExpires >= DateTime.Now)
            {
                var u = _user;
                return(_user.user2 == null? new UsuarioMembership(u.user, u.roles): new UsuarioMembership(u.user2, u.roles2));
            }

            using (var db = new TS_Entities())
            {
                usuarios user;
                usuarios user2 = null;
                List <perfil_usuario> roles;
                List <perfil_usuario> roles2 = null;
                user = (from u in db.usuarios
                        where (u.estado == true) &&
                        (u.Nom_cor_usu == username)
                        select u).FirstOrDefault();
                roles = db.perfil_usuario.Where(o => o.id_usuario == user.id_usu).ToList();
                if (_user?.user2?.Nom_cor_usu != null)
                {
                    user2 = (from u in db.usuarios
                             where (u.estado == true) &&
                             (u.Nom_cor_usu == _user.user2.Nom_cor_usu)
                             select u).FirstOrDefault();
                    roles2 = db.perfil_usuario.Where(o => o.id_usuario == _user.user2.id_usu).ToList();
                }
                SessionUser sessionUser = new SessionUser()
                {
                    user = user, user2 = user2, roles = roles, roles2 = roles2, SessionExpires = DateTime.Now.AddMinutes(5)
                };
                deleteFromCacheUSER(sessionUser.user.id_usu);
                USERS.Add(sessionUser);
                return(sessionUser.user2 == null? (sessionUser.user == null ? null : new UsuarioMembership(sessionUser.user, sessionUser.roles)): new UsuarioMembership(sessionUser.user2, sessionUser.roles2));
            }
        }
 public MasterController()
 {
     _db          = new TS_Entities();
     CustomHelper = new CustomHelper(_db);
 }
 public CustomHelper(TS_Entities _db)
 {
     this._db = _db;
 }