コード例 #1
0
 protected override void Dispose(bool disposing)
 {
     if (disposing)
     {
         db.Dispose();
     }
     base.Dispose(disposing);
 }
コード例 #2
0
        public ActionResult SolicitarAtivacao()
        {
            //string userName = MD5Crypt.Descriptografar(token);
            var         userName = User.Identity.Name;
            UserProfile user     = null;

            try
            {
                user = db.UserProfiles.Where(u => u.UserName.ToLower() == userName.ToLower()).FirstOrDefault();
                if (user != null)
                {
                    user.situacao        = "Ativamento solicitado";
                    db.Entry(user).State = EntityState.Modified;
                    db.SaveChanges();
                    notificarOrganizadorSolicitacaoAtivar(user.nome, user.barragemId);
                    return(View("SolicitarAtivacao"));
                }
                else
                {
                    ViewBag.MsgErro = "Este usuário não existe.";
                    return(View());
                }
            }
            catch (Exception ex)
            {
                var routeData = new RouteData();
                routeData.Values["controller"] = "Erros";
                routeData.Values["exception"]  = ex;
                routeData.Values["action"]     = "General";
                return(RedirectToAction("General", "Erros", routeData));
            }
            finally
            {
                if (db != null)
                {
                    db.Dispose();
                }
            }
            //return View();
        }
コード例 #3
0
        public IHttpActionResult ResetarSenha(string email = "", string userName = "")
        {
            UserProfile user = null;

            try {
                if (userName != "")
                {
                    user = db.UserProfiles.Where(u => u.UserName == userName).FirstOrDefault();
                }
                else
                {
                    user = db.UserProfiles.Where(u => u.email == email && u.situacao != "desativado").FirstOrDefault();
                    if (user == null)
                    {
                        user = db.UserProfiles.Where(u => u.email == email).FirstOrDefault();
                    }
                }
                if (user != null)
                {
                    if (String.IsNullOrEmpty(user.email))
                    {
                        return(InternalServerError(new Exception("Este usuário não possui e-mail cadastrado. Por favor, entre em contato com o administrador.")));
                    }
                    else
                    {
                        Database.SetInitializer <BarragemDbContext>(null);
                        if (!WebSecurity.Initialized)
                        {
                            WebSecurity.InitializeDatabaseConnection("DefaultConnection", "UserProfile", "UserId", "UserName", autoCreateTables: false);
                        }
                        string confirmationToken = WebSecurity.GeneratePasswordResetToken(user.UserName);
                        EnviarMailSenha(confirmationToken, user.nome, user.email);
                        return(StatusCode(HttpStatusCode.NoContent));
                    }
                }
                else
                {
                    return(InternalServerError(new Exception("Usuário não encontrado. Verifique se o email está correto ou se o usuário está desativado.")));
                }
            } catch (Exception ex) {
                return(InternalServerError(new Exception(ex.Message)));
            } finally {
                if (db != null)
                {
                    db.Dispose();
                }
            }
        }