private PwnedPasswordsModel GetModel()
        {
            PwnedPasswordsModel model = AppDomain.CurrentDomain.GetData("PwnedPasswordsModel") as PwnedPasswordsModel;

            if (model == null)
            {
                model           = new PwnedPasswordsModel();
                model.Password  = "******";
                model.Message   = "";
                model.Frequency = 0;
                model.Name      = "user name";
                SetModel(model);
            }

            return(model);
        }
        public async Task <IActionResult> CheckPwnedPassword(PwnedPasswordsModel model)
        {
            if (ModelState.IsValid)
            {
                (bool isPwned, int frequency)response = await Service.HasPasswordBeenPwned(model.Password);

                model.Frequency = response.frequency;
                model.IsPwned   = response.isPwned;

                var userList = GetUserList();
                if (userList.Contains(model.Name))
                {
                    model.Message = string.Format("Welcome back {0} !", model.Name);
                }
                else
                {
                    model.Message = string.Format("Welcome new user: {0} !", model.Name);
                    SetUserList(model.Name);
                }

                SetModel(model);
            }
            return(RedirectToAction("Index"));
        }
 private void SetModel(PwnedPasswordsModel model)
 {
     AppDomain.CurrentDomain.SetData("PwnedPasswordsModel", model);
 }