Пример #1
0
 /// <summary>
 /// Métdodo que permite guardar en la base de datos la última actualización de un
 /// juego
 /// </summary>
 /// <param name="idgame">identificador del juego</param>
 public void SaveLastUpdate(int idgame)
 {
     try
     {
         using (var dataBase = new EntityModelContainer())
         {
             var gameUpdate = dataBase.GameSet.Where(u => u.Id == idgame).FirstOrDefault();
             if (gameUpdate.Id != 0)
             {
                 gameUpdate.Last_update = DateTime.Now;
                 try
                 {
                     dataBase.SaveChanges();
                 }
                 catch (DbEntityValidationException ex)
                 {
                     Logger.log.Warn("SaveLastUpdate DataBase" + ex);
                 }
             }
         }
     }catch (Exception ex)
     {
         Logger.log.Error("Funtion SaveLastUpdate: " + ex.Message);
     }
 }
Пример #2
0
 /// <summary>
 /// Método que obtiene una lista de Historial de los usuarios
 /// </summary>
 /// <returns>regresa una lista de los historiales registrados</returns>
 public List <Record> GetRecords()
 {
     try {
         using (var dataBase = new EntityModelContainer()) {
             return(dataBase.RecordSet.Select(u => new Record
             {
                 Id = u.Id,
                 Mult_best_score = u.Mult_best_score,
                 Mult_games_played = u.Mult_games_played,
                 Mult_games_won = u.Mult_games_won,
                 Story_best_score = u.Story_best_score,
                 Account = new Account
                 {
                     Id = u.Id,
                     User = u.Account.User,
                     Password = u.Account.Password,
                     Registration_date = u.Account.Registration_date,
                     Key_confirmation = u.Account.Key_confirmation
                 }
             }).OrderByDescending(x => x.Story_best_score).ToList());
         }
     }catch (Exception ex) {
         Logger.log.Error(ex);
         return(null);
     }
 }
Пример #3
0
        public ActionResult About(String token)
        {
            if (token == null)
            {
                ViewBag.Title   = "Registrate a Lisman";
                ViewBag.Message = "Descarga LISMAN y unite a la experiencia Multijugador";
                return(View());
            }
            int result = -1;

            try {
                using (var dataBase = new EntityModelContainer()) {
                    int exist = dataBase.AccountSet.Where(u => u.Key_confirmation == token).Count();
                    if (exist > 0)
                    {
                        var accountValidate = dataBase.AccountSet.Where(u => u.Key_confirmation == token).FirstOrDefault();
                        accountValidate.Key_confirmation = " ";
                        result = dataBase.SaveChanges();
                    }
                }
            } catch (Exception ex) {
                ViewBag.Message = ex.Message;
            }
            if (result == -1)
            {
                ViewBag.Message = "No se pudo confirmar tu registro.";
            }
            else
            {
                ViewBag.Message = "Se confirmo tu registro con Éxito";
            }

            return(View());
        }
Пример #4
0
 /// <summary>
 /// Método que valida si un nombre de ususario ya se encuentra registrado
 /// </summary>
 /// <param name="username"></param>
 /// <returns>regresa un valor true si es que existe</returns>
 public bool UserNameExists(string username)
 {
     try {
         using (var dataBase = new EntityModelContainer()) {
             int exists = dataBase.AccountSet.Where(u => u.User == username).Count();
             if (exists > 0)
             {
                 return(true);
             }
         }
     } catch (Exception ex) {
         Logger.log.Error(ex);
     }
     return(false);
 }
Пример #5
0
 /// <summary>
 /// Método que evalua si existe un email igual registrado
 /// </summary>
 /// <param name="emailAdress">email que sera consultado</param>
 /// <returns>regresa un valor true si existe el email</returns>
 public bool EmailExists(string emailAdress)
 {
     try {
         using (var dataBase = new EntityModelContainer()) {
             int exists = dataBase.PlayerSet.Where(u => u.Email == emailAdress).Count();
             if (exists > 0)
             {
                 return(true);
             }
         }
     } catch (Exception ex) {
         Logger.log.Error(ex);
     }
     return(false);
 }
Пример #6
0
 /// <summary>
 /// Método que obtiene la Account de un jugador por su nombre
 /// </summary>
 /// <param name="user">nombre de usuario del cliente</param>
 /// <returns>Regresa un objeto de tipo Account</returns>
 public Account GetAccountByUser(string user)
 {
     try {
         using (var dataBase = new EntityModelContainer()) {
             return(dataBase.AccountSet.Where(u => u.User == user).Select(u => new Account
             {
                 Id = u.Id,
                 User = u.User,
                 Password = u.Password,
                 Registration_date = u.Registration_date,
             }).FirstOrDefault());
         }
     }catch (Exception ex) {
         Logger.log.Error(ex);
         return(null);
     }
 }
Пример #7
0
        /// <summary>
        /// Método que permite al Cliente crear un nuevo juego
        /// </summary>
        /// <param name="user">nombre de usuario del jugador</param>
        /// <returns>Regresa el identificador del juego que creó</returns>
        public int CreateGame(string user)
        {
            int idgame = 0;

            try
            {
                using (var dataBase = new EntityModelContainer())
                {
                    var newGame = new DataAccess.Game
                    {
                        Creation_date = DateTime.Now,
                        Status        = true,
                        Members       = new List <DataAccess.Account>(),
                        Last_update   = DateTime.Now
                    };
                    try
                    {
                        dataBase.GameSet.Add(newGame);
                        dataBase.SaveChanges();
                    }
                    catch (DbEntityValidationException ex)
                    {
                        Logger.log.Error(ex);
                        return(-1);
                    }

                    idgame = dataBase.GameSet.Max(u => u.Id);
                }
            }
            catch (Exception ex)
            {
                Logger.log.Error("Funtion CreateGame: " + ex.Message);
            }


            var listPlayer = new List <String>();

            listGamesOnline.Add(idgame, listPlayer);
            listGamesOnline[idgame].Add(user);
            Console.WriteLine("Game created by {0} ID:{1}, at:{2}", user, idgame, DateTime.Now);
            return(idgame);
        }
Пример #8
0
 /// <summary>
 /// Método que permite guardar la información del juego en la BD
 /// </summary>
 /// <param name="idgame">identificador del juego</param>
 /// <param name="userWinner">nombre de usuario ganador</param>
 private void SaveGame(int idgame, String userWinner)
 {
     try
     {
         using (var dataBase = new EntityModelContainer())
         {
             var gameUpdate = dataBase.GameSet.Where(u => u.Id == idgame).FirstOrDefault();
             if (gameUpdate.Id != 0)
             {
                 gameUpdate.Last_update = DateTime.Now;
                 gameUpdate.Status      = false;
                 gameUpdate.Game_over   = DateTime.Now;
                 foreach (KeyValuePair <int, InformationPlayer> players in multiplayerGameInformation[idgame].lismanUsers)
                 {
                     var account = dataBase.AccountSet.Where(u => u.User == players.Value.userLisman).FirstOrDefault();
                     account.Record.Mult_best_score    = players.Value.scoreLisman;
                     account.Record.Mult_games_played += 1;
                     if (players.Value.userLisman == userWinner)
                     {
                         account.Record.Mult_games_won += 1;
                     }
                     gameUpdate.Members.Add(account);
                 }
                 try
                 {
                     dataBase.SaveChanges();
                 }
                 catch (DbEntityValidationException ex)
                 {
                     Logger.log.Warn("SaveLastUpdate DataBase" + ex);
                 }
             }
         }
     }
     catch (Exception ex)
     {
         Logger.log.Error("Funtion SaveLastUpdate: " + ex.Message);
     }
 }
Пример #9
0
        /// <summary>
        /// Métododo que permite iniciar sesion en el sistema
        /// </summary>
        /// <param name="user">nombre del ususario del jugador</param>
        /// <param name="password">contraseña del usuario del sistema</param>
        /// <returns></returns>
        public Account LoginAccount(string user, string password)
        {
            var newAccount = new Account();

            try {
                using (var dataBase = new EntityModelContainer()) {
                    int exists = dataBase.AccountSet.Where(u => u.User == user && u.Password == password).Count();
                    if (exists > 0)
                    {
                        newAccount = dataBase.AccountSet.Where(u => u.User == user && u.Password == password).Select(u => new Account
                        {
                            Id                = u.Id,
                            User              = u.User,
                            Password          = u.Password,
                            Registration_date = u.Registration_date,
                            Key_confirmation  = u.Key_confirmation
                        }).FirstOrDefault();
                        if (newAccount.Id > 0)
                        {
                            if (!logginsConnections.ContainsKey(user))
                            {
                                logginsConnections.Add(user, null);
                            }
                            Console.WriteLine("User: {0} Connected at: {1}", newAccount.User, DateTime.Now);
                        }
                        return(newAccount);
                    }
                    else
                    {
                        newAccount.Id = 0;
                        return(newAccount);
                    }
                }
            } catch (Exception ex) {
                Logger.log.Error(ex.Message);
                newAccount.Id = -1;
                return(newAccount);
            }
        }
Пример #10
0
 /// <summary>
 /// Método que permite al Cliente registrar una nueva cuenta
 /// </summary>
 /// <param name="account">objeto de tipo cuenta que contiene la informacion del jugador</param>
 /// <returns>regresa un valor int de 1 si la operacion fue exitosa</returns>
 public int AddAccount(Account account)
 {
     try {
         using (var dataBase = new EntityModelContainer()) {
             var newAccount = new DataAccess.Account
             {
                 User              = account.User,
                 Password          = account.Password,
                 Registration_date = account.Registration_date,
                 Key_confirmation  = account.Key_confirmation,
                 Player            = new DataAccess.Player
                 {
                     First_name = account.Player.First_name,
                     Last_name  = account.Player.Last_name,
                     Email      = account.Player.Email
                 },
                 Record = new DataAccess.Record
                 {
                     Mult_best_score   = 0,
                     Mult_games_played = 0,
                     Mult_games_won    = 0,
                     Story_best_score  = 0
                 }
             };
             try {
                 dataBase.AccountSet.Add(newAccount);
                 return(dataBase.SaveChanges());
             }catch (DbEntityValidationException ex) {
                 Logger.log.Error(ex);
                 return(-1);
             }
         }
     }catch (Exception ex) {
         Logger.log.Error(ex);
         return(-1);
     }
 }
Пример #11
0
        private void button1_Click(object sender, EventArgs e)
        {
            EntityModelContainer container = new EntityModelContainer();

            MessageBox.Show(container.MainEntity1.First().Name);
        }
Пример #12
0
        private void button1_Click(object sender, EventArgs e)
        {
            EntityModelContainer container = new EntityModelContainer();

            MessageBox.Show(container.MainEntity1.First().Name);
        }