partial void DeleteUsuario(Usuario instance);
 partial void UpdateUsuario(Usuario instance);
        public ActionResult Register(RegisterModel model, Usuario aa)
        {
            if (ModelState.IsValid)
            {
                // Intento de registrar al usuario
                try
                {
                    WebSecurity.CreateUserAndAccount(model.UserName, model.Password);
                    WebSecurity.Login(model.UserName, model.Password);

                    conectorDataContext db = new conectorDataContext();
                    aa.Nickname = model.UserName;
                    aa.password = model.Password;
                    db.Usuario.InsertOnSubmit(aa);
                    db.SubmitChanges();

                    return RedirectToAction("Index", "Home");
                }
                catch (MembershipCreateUserException e)
                {
                    ModelState.AddModelError("", ErrorCodeToString(e.StatusCode));
                }
            }

            // Si llegamos a este punto, es que se ha producido un error y volvemos a mostrar el formulario
            return View(model);
        }
 partial void InsertUsuario(Usuario instance);
        public ActionResult Manage(LocalPasswordModel model, Usuario aa)
        {
            string an = model.OldPassword;
            conectorDataContext db = new conectorDataContext();

            bool hasLocalAccount = OAuthWebSecurity.HasLocalAccount(WebSecurity.GetUserId(User.Identity.Name));
            ViewBag.HasLocalPassword = hasLocalAccount;
            ViewBag.ReturnUrl = Url.Action("Manage");
            if (hasLocalAccount)
            {
                if (ModelState.IsValid)
                {
                    // ChangePassword iniciará una excepción en lugar de devolver false en determinados escenarios de error.
                    bool changePasswordSucceeded;
                    try
                    {
                        //string nom = aa.Nickname, pas = model.OldPassword, npas = model.NewPassword;
                        changePasswordSucceeded = WebSecurity.ChangePassword(aa.Nickname = User.Identity.Name, model.OldPassword, aa.password = model.NewPassword);
                        //db.Usuario.DeleteOnSubmit(aa);
                        //db.SubmitChanges();
                        //db.Usuario.InsertOnSubmit(aa);
                        //db.SubmitChanges();
                    }
                    catch (Exception)
                    {
                        changePasswordSucceeded = false;
                    }

                    if (changePasswordSucceeded)
                    {
                        return RedirectToAction("Manage", new { Message = ManageMessageId.ChangePasswordSuccess });
                    }
                    else
                    {
                        ModelState.AddModelError("", "La contraseña actual es incorrecta o la nueva contraseña no es válida.");
                    }
                }
            }
            else
            {
                // El usuario no dispone de contraseña local, por lo que debe quitar todos los errores de validación generados por un
                // campo OldPassword vacío
                ModelState state = ModelState["OldPassword"];
                if (state != null)
                {
                    state.Errors.Clear();
                }

                if (ModelState.IsValid)
                {
                    try
                    {
                        WebSecurity.CreateAccount(User.Identity.Name, model.NewPassword);
                        return RedirectToAction("Manage", new { Message = ManageMessageId.SetPasswordSuccess });
                    }
                    catch (Exception e)
                    {
                        ModelState.AddModelError("", e);
                    }
                }
            }

            // Si llegamos a este punto, es que se ha producido un error y volvemos a mostrar el formulario
            return View(model);
        }