public IActionResult Create(AspNetUsersViewModel aspNetUsersViewModel, params string[] selectedGroups)
        {
            if (ModelState.IsValid)
            {
                var aspNetUser = new AspNetUser();
                aspNetUser.UserName = aspNetUsersViewModel.UserName;
                aspNetUser.FullName = aspNetUsersViewModel.FullName;
                aspNetUser.Email    = aspNetUsersViewModel.Email;

                var userID = identity.AddAspNetUser(aspNetUser, aspNetUsersViewModel.Password, selectedGroups);

                if (userID != null)
                {
                    TempData["message"] = $"Asp Net User has been created.";
                }
                else
                {
                    TempData["message"] = $"Asp Net User was not created.";
                }

                return(RedirectToAction("List"));
            }
            else
            {
                // there is something wrong with the data values
                foreach (var group in identity.GetAspNetGroups().ToList())
                {
                    var listItem = new SelectListItem()
                    {
                        Text     = group.Name,
                        Value    = group.GroupId.ToString(),
                        Selected = selectedGroups.Contains(group.GroupId.ToString())
                    };
                    aspNetUsersViewModel.AspNetGroupsList.Add(listItem);
                }

                return(View(aspNetUsersViewModel));
            }
        }