public async Task<ActionResult> Register(RegisterViewModel model, User user)
        {
            if (ModelState.IsValid)
            {
                var regUser = new ApplicationUser { UserName = model.Email, Email = model.Email };
                var result = await UserManager.CreateAsync(regUser, model.Password);

                if (result.Succeeded)
                {
                    
                    await SignInManager.SignInAsync(regUser, isPersistent:false, rememberBrowser:false);

                    UsersRepository usersRepository = new UsersRepository();
                    user.ApplicationUserId = regUser.Id;
                    usersRepository.InsertOrUpdate(user);
                    usersRepository.Save();

                    return RedirectToAction("Index", "Home");
                }
                AddErrors(result);
            }

            // If we got this far, something failed, redisplay form
            return View(model);
        }
 public ActionResult Register()
 {
     RegisterViewModel vm = new RegisterViewModel
     {
         CreateEditUserViewModel = new CreateEditUserViewModel
         {
             User = new User(),
             CompetencyHeaders = _competencyHeadersRepository.
                 AllIncluding(a => a.Competencies).ToList()
         }
      };
     
       return View(vm);
 }