示例#1
0
 protected void Application_Start()
 {
     BotStart.bot              = new Models.StoreBot();
     BotStart.bot.RegisterAcc += Bot_RegisterAcc;
     BotStart.bot.Start();
     AreaRegistration.RegisterAllAreas();
     Database.SetInitializer <EFDBContext>(new CreateDatabaseIfNotExists <EFDBContext>());
     RouteConfig.RegisterRoutes(RouteTable.Routes);
     ModelBinders.Binders.Add(typeof(Cart), new CartModelBinder());
     using (EFDBContext db = new EFDBContext())
     {
         if (db.Users.Count() == 0)
         {
             db.Users.Add(new User {
                 UserName = "******", Password = CypherClass.XORCipher("Supersecretp@ssw0rd!", "tramb")
             });
             db.SaveChanges();
         }
     }
 }
        public ActionResult Register(RegisterModel model)
        {
            if (ModelState.IsValid)
            {
                User user = null;
                using (UserContext db = new UserContext())
                {
                    user = db.Users.FirstOrDefault(u => u.UserName == model.UserName);
                }
                if (user == null)
                {
                    // создаем нового пользователя
                    using (EFDBContext db = new EFDBContext())
                    {
                        string cyphPass = CypherClass.XORCipher(model.Password, "tramb");
                        db.Users.Add(new User {
                            UserName = model.UserName, Password = cyphPass
                        });
                        db.SaveChanges();

                        user = db.Users.Where(u => u.UserName == model.UserName && u.Password == cyphPass).FirstOrDefault();
                    }
                    // если пользователь удачно добавлен в бд
                    if (user != null)
                    {
                        FormsAuthentication.SetAuthCookie(model.UserName, true);
                        return(RedirectToAction("List", "Account"));
                    }
                }
                else
                {
                    ModelState.AddModelError("", "Користувач з таким логіном вже існує");
                }
            }

            return(View("AccRegister", model));
        }
        public ActionResult Login(LoginModel model)
        {
            if (ModelState.IsValid)
            {
                // поиск пользователя в бд
                User user = null;
                using (UserContext db = new UserContext())
                {
                    string cyphPass = CypherClass.XORCipher(model.Password, "tramb");
                    user = db.Users.FirstOrDefault(u => u.UserName == model.UserName && u.Password == cyphPass);
                }
                if (user != null)
                {
                    FormsAuthentication.SetAuthCookie(model.UserName, true);
                    return(RedirectToAction("Index", "Admin"));
                }
                else
                {
                    ModelState.AddModelError("", "Користувача з таким логіном та паролем не існує");
                }
            }

            return(View(model));
        }