public bool RegisterAccount(AccountServiceModel aaAccountServiceModel)
        {
            User user = new User();

            user.FirstName  = aaAccountServiceModel.FirstName;
            user.LastName   = aaAccountServiceModel.LastName;
            user.Address    = aaAccountServiceModel.Address;
            user.BirthDay   = aaAccountServiceModel.BirthDay;
            user.CritizenId = aaAccountServiceModel.CritizenId;
            user.Email      = aaAccountServiceModel.Email;
            user.UserName   = aaAccountServiceModel.UserName;
            user.Password   = aaAccountServiceModel.Password;

            AccountRepository accountRepository = new AccountRepository();

            if (accountRepository.Get(user.UserName) == null)
            {
                if (!string.IsNullOrEmpty(user.FirstName) &&
                    !string.IsNullOrEmpty(user.LastName) &&
                    !string.IsNullOrEmpty(user.Address) &&
                    user.BirthDay != null &&
                    !string.IsNullOrEmpty(user.CritizenId) &&
                    !string.IsNullOrEmpty(user.Email) &&
                    !string.IsNullOrEmpty(user.UserName) &&
                    !string.IsNullOrEmpty(user.Password))
                {
                    accountRepository.Create(user);
                    return(true);
                }
                else
                {
                    return(false);
                }
            }
            return(false);
        }
        public ActionResult Register(RegisterViewModel model)
        {
            if (ModelState.IsValid)
            {
                AccountServiceModel accountServiceModel = new AccountServiceModel();
                accountServiceModel.FirstName = model.FirstName;
                accountServiceModel.LastName = model.LastName;
                accountServiceModel.Address = model.Address;
                accountServiceModel.BirthDay = model.BirthDay;
                accountServiceModel.CritizenId = model.CritizenId;
                accountServiceModel.Email = model.Email;
                accountServiceModel.UserName = model.UserName;
                accountServiceModel.Password = model.Password;

                AccountService accountService = new AccountService();
                if (accountService.RegisterAccount(accountServiceModel))
                {
                    return RedirectToAction("Index", "Home");
                }
                else
                {
                    ModelState.AddModelError(string.Empty, "UserName already exists.");
                    return View(model);
                }
            }
            ModelState.AddModelError(string.Empty, "UserName already exists.");
            return View(model);
        }