예제 #1
0
        public async Task <IActionResult> GetByUid(string uid)
        {
            string        hashedUid = MD5Encryption.CalculateMD5Hash(uid);
            List <string> ut        = null;

            try
            {
                ut = await _db.XRefSpecObjects.Where(b => b.HashedUid == hashedUid)
                     .Select(c => c.XRefSpecJson)
                     .ToListAsync();
            }catch (System.Exception e)
            {
                var t = e.Message;
            }



            //var response = new HttpResponseMessage();
            //var ms = new MemoryStream();
            //var sw = new StreamWriter(ms);
            //sw.Write("[");
            //sw.Write(string.Join(",", ut));
            //sw.Write("]");
            //sw.Flush();
            //ms.Position = 0;
            //response.Content = new StreamContent(ms);
            //response.StatusCode = HttpStatusCode.OK;
            //return new ObjectResult(response);
            return(StatusCode(200, "[" + string.Join(",", ut) + "]"));
        }
예제 #2
0
        /// <summary>
        /// 更新帐户密码
        /// </summary>
        /// <param name="accountId">帐户Id</param>
        /// <param name="password">新密码</param>
        public static void UpdateAccountPassword(long accountId, string password)
        {
            Account account = Account.FindById(accountId);

            account.Password = MD5Encryption.Encode(password);
            account.Save();
        }
예제 #3
0
    public MAYAVI_USERS_C GetMayaviUserByMailPwd(string EMAIL, string PWD)
    {
        bool          IsValid = false;
        MD5Encryption md5     = new MD5Encryption();

        PWD = md5.Encryption(PWD);
        MAYAVI_USERS_C mayavi_users_details = new MAYAVI_USERS_C();

        Query = @"SELECT UID,USER_NAME,EMAIL,MOBILENO,ORGANIZATION,PWD,PRIVILEGE FROM MAYAVI_USERS WHERE EMAIL=@EMAIL AND PWD=@PWD";
        DataTable DataTable_MAYAVI_USERS = db.ExecuteSelect(Query, new MySqlParameter("@EMAIL", EMAIL), new MySqlParameter("@PWD", PWD));

        if (DataTable_MAYAVI_USERS.Rows.Count > 0)
        {
            foreach (DataRow item in DataTable_MAYAVI_USERS.Rows)
            {
                mayavi_users_details.UID          = item["UID"].ToString();
                mayavi_users_details.USER_NAME    = item["USER_NAME"].ToString();
                mayavi_users_details.EMAIL        = item["EMAIL"].ToString();
                mayavi_users_details.MOBILENO     = item["MOBILENO"].ToString();
                mayavi_users_details.ORGANIZATION = item["ORGANIZATION"].ToString();
                mayavi_users_details.PWD          = item["PWD"].ToString();
                mayavi_users_details.PRIVILEGE    = item["PRIVILEGE"].ToString();
                IsValid = true;
            }
        }
        return(mayavi_users_details);
    }
        public ActionResult Login(LoginViewModel model)
        {
            if (ModelState.IsValid)
            {
                model.Password = MD5Encryption.MD5Sifrele(model.Password);
                BusinessLayerResult <EvernoteUser> res = eum.LoginUser(model);

                if (res.Errors.Count > 0)
                {
                    res.Errors.ForEach(x => ModelState.AddModelError("", x.Message));

                    return(View(model));
                }

                CurrentSession.Set <EvernoteUser>("login", res.Result);

                //var response = Request["g-recaptcha-response"];
                //const string secret = "6LcjInAUAAAAADx99wOz1kr3QVnSrgYrX61f0eU0";

                //var client = new WebClient();
                //var reply =
                //    client.DownloadString(
                //        string.Format("https://www.google.com/recaptcha/api/siteverify?secret={0}&response={1}", secret, response));

                //var captchaResponse = JsonConvert.DeserializeObject<CaptchaResponse>(reply);

                //if (!captchaResponse.Success)
                //    TempData["Message"] = "Lütfen güvenliği doğrulayınız.";
                //else
                return(RedirectToAction("Index"));
            }

            return(View(model));
        }
예제 #5
0
    public int InsertDevices(string UID, string DEVICE_NAME)
    {
        int AffectedRow = 0;

        try
        {
            string        DEVICE_ID         = null;
            string        HOST_NAME         = string.Empty;
            MD5Encryption md5               = new MD5Encryption();
            string        DEVICE_KYE        = md5.Encryption(DateTime.Now.ToString("yyyyMMddHHmmssfff"));
            string        CONNECTION_STATUS = "N";
            string        TXRX_LIMIT        = "0";
            string        BANDWIDTH         = "100";
            string        USER_NAME         = "";
            Query       = @"INSERT INTO DEVICES(UID,DEVICE_NAME,HOST_NAME,DEVICE_ID,DEVICE_KYE,CONNECTION_STATUS,TXRX_LIMIT,BANDWIDTH,UPTIME,USER_NAME) VALUES(@UID,@DEVICE_NAME,@HOST_NAME,@DEVICE_ID,@DEVICE_KYE,@CONNECTION_STATUS,@TXRX_LIMIT,@BANDWIDTH,NOW(),@USER_NAME)";
            AffectedRow = db.ExecuteInsert(Query,
                                           new MySqlParameter("@UID", UID),
                                           new MySqlParameter("@DEVICE_NAME", DEVICE_NAME),
                                           new MySqlParameter("@HOST_NAME", HOST_NAME),
                                           new MySqlParameter("@DEVICE_ID", DEVICE_ID),
                                           new MySqlParameter("@DEVICE_KYE", DEVICE_KYE),
                                           new MySqlParameter("@CONNECTION_STATUS", CONNECTION_STATUS),
                                           new MySqlParameter("@TXRX_LIMIT", TXRX_LIMIT),
                                           new MySqlParameter("@BANDWIDTH", BANDWIDTH),
                                           new MySqlParameter("@USER_NAME", USER_NAME));
        }
        catch
        {
            AffectedRow = 0;
        }
        return(AffectedRow);
    }
예제 #6
0
        public string UserSignUp(object user)
        {
            JObject jdata  = JObject.Parse(user.ToString());
            string  uemail = jdata.SelectToken("UserEmail").ToString(); //邮箱
            string  upwd   = jdata.SelectToken("UserPwd").ToString();   //密码
            string  uname  = jdata.SelectToken("UserName").ToString();  //昵称
            //获取默认账号和用户名
            int account = QueryDAL.GetModelTowhereSql <ShiUsers>
                              ("select top 1 * from ShiUsers order by Key_No desc").KeyNo;
            string   uaccname = "shi00" + (account + 1);
            ShiUsers users    = new ShiUsers();

            users.UserEmail = uemail;
            users.UserPwd   = upwd;
            users.UserName  = uname;
            users.Account   = uaccname;
            users.UserSex   = 2;//默认为私密
            //创建token:根据用户名+时间通过MD5加密后保证唯一性
            DateTime gettime = DateTime.Now;

            users.UserToken    = MD5Encryption.Md5_32(uname.ToString() + gettime.ToString());
            users.TokenEndtiem = gettime;
            if (InsertDAL.InsertModel <ShiUsers>(users))
            {
                return(users.UserToken);
            }
            return("-1");
        }
예제 #7
0
    public int InsertMayavi_Users(string USER_NAME, string EMAIL, string PWD)
    {
        int AffectedRow = 0;

        try
        {
            string        MOBILENO     = "";
            string        ORGANIZATION = "";
            string        PRIVILEGE    = "F";
            MD5Encryption md5          = new MD5Encryption();
            PWD         = md5.Encryption(PWD);
            Query       = @"INSERT INTO MAYAVI_USERS(USER_NAME,EMAIL,MOBILENO,ORGANIZATION,PWD,PRIVILEGE) VALUES(@USER_NAME,@EMAIL,@MOBILENO,@ORGANIZATION,@PWD,@PRIVILEGE)";
            AffectedRow = db.ExecuteInsert(Query,
                                           new MySqlParameter("@USER_NAME", USER_NAME),
                                           new MySqlParameter("@EMAIL", EMAIL),
                                           new MySqlParameter("@MOBILENO", MOBILENO),
                                           new MySqlParameter("@ORGANIZATION", ORGANIZATION),
                                           new MySqlParameter("@PWD", PWD),
                                           new MySqlParameter("@PRIVILEGE", PRIVILEGE));
        }
        catch
        {
            AffectedRow = 0;
        }
        return(AffectedRow);
    }
예제 #8
0
        public async Task <LoginOutput> LoginAsync([FromServices] IHttpContextAccessor httpContextAccessor, [Required] LoginInput input)
        {
            // 获取加密后的密码
            var encryptPassword = MD5Encryption.Encrypt(input.Password.Trim());

            // 判断用户名或密码是否正确
            var user = await _userRepository.FirstOrDefaultAsync(u => u.Account.Equals(input.Account) && u.Password.Equals(encryptPassword));

            _ = user ?? throw Oops.Oh(SystemErrorCodes.u1000);

            // 更新登录时间
            user.SigninedTime = DateTimeOffset.Now;

            // 映射结果
            var output = user.Adapt <LoginOutput>();

            // 生成 token
            var accessToken = output.AccessToken = JWTEncryption.Encrypt(new Dictionary <string, object>
            {
                { "UserId", user.Id },
                { "Account", user.Account }
            });

            // 生成 刷新token
            var refreshToken = JWTEncryption.GenerateRefreshToken(accessToken);

            // 设置 Swagger 自动登录
            httpContextAccessor.SigninToSwagger(accessToken);

            // 设置刷新 token
            httpContextAccessor.HttpContext.Response.Headers["x-access-token"] = refreshToken;

            return(output);
        }
예제 #9
0
        /// <inheritdoc />
        public void Register(TypeAdapterConfig config)
        {
            // tbStudent.Adapt<StudentDto>();
            config.ForType <TbStudent, StudentDto>()
            .IgnoreNullValues(true)     // 忽略空值映射
            .Ignore(dest => dest.Password)
            .Map(desc => desc.Sex, src => src.Sex == "0"?"男":src.Sex == "1"?"女":"保密");

            // studentDto.Adapt<TbStudent>();
            config.ForType <StudentDto, TbStudent>()
            .IgnoreNullValues(true)     // 忽略空值映射
            .IgnoreIf((src, dest) => src.ClassesId <= 0, dest => dest.ClassesId)
            .IgnoreIf((src, dest) => src.DeptId <= 0, dest => dest.DeptId)
            .IgnoreIf((src, dest) => src.StuNo == "", dest => dest.StuNo)
            .IgnoreIf((src, dest) => src.StuName == "", dest => dest.StuName)
            .IgnoreIf((src, dest) => src.IdCard == "", dest => dest.IdCard)
            .IgnoreIf((src, dest) => src.Telphone == "", dest => dest.Telphone)
            .IgnoreIf((src, dest) => src.Sex == "", dest => dest.Sex)
            .IgnoreIf((src, dest) => src.Password == "", dest => dest.Password)
            .Map(desc => desc.Sex,
                 src => src.Sex == "男" ? "0" :
                 src.Sex == "女" ? "1" :
                 src.Sex == "保密" ? "2" : (src.Sex == "保密" || src.Sex == "男" || src.Sex == "女") ? "2" : src.Sex)
            .Map(desc => desc.Password, src => MD5Encryption.Encrypt(src.Password));
        }
예제 #10
0
        /// <summary>
        /// 测试 RunCompileFromCached 方法(弱类型模型)
        /// </summary>
        /// <param name="name"></param>
        /// <returns></returns>
        public async Task <string> TestRunCompileFromCached(string name)
        {
            var runCompileTemplate = "Hello @Model.Name";
            var model = new { Name = name };

            var str1 = _viewEngine.RunCompileFromCached(runCompileTemplate, model);
            var str2 = runCompileTemplate.RunCompileFromCached(model);
            var str3 = await _viewEngine.RunCompileFromCachedAsync(runCompileTemplate, model);

            var str4 = await runCompileTemplate.RunCompileFromCachedAsync(model);

            var isEqual = (str1 == str2) && (str3 == str4) && (str1 == str4);

            if (!isEqual)
            {
                throw new Exception("多次编译之后模板内容相等");
            }

            if (!File.Exists(Path.Combine(AppContext.BaseDirectory, "templates", $"~{MD5Encryption.Encrypt(runCompileTemplate)}.dll")))
            {
                throw new Exception("没找到模板缓存 .dll");
            }

            return(str1);
        }
예제 #11
0
        /// <summary>
        /// 测试 RunCompileFromCached 方法(强类型模型)
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public async Task <string> TestRunCompileStronglyFromCached(TestStronglyModel model)
        {
            var runCompileTemplate = @"Hello @Model.Name
@foreach(var item in Model.Items)
{
    <p>@item</p>
}";

            var str1 = _viewEngine.RunCompileFromCached(runCompileTemplate, model);
            var str2 = runCompileTemplate.RunCompileFromCached(model);
            var str3 = await _viewEngine.RunCompileFromCachedAsync(runCompileTemplate, model);

            var str4 = await runCompileTemplate.RunCompileFromCachedAsync(model);

            var isEqual = (str1 == str2) && (str3 == str4) && (str1 == str4);

            if (!isEqual)
            {
                throw new Exception("多次编译之后模板内容相等");
            }

            if (!File.Exists(Path.Combine(AppContext.BaseDirectory, "templates", $"~{MD5Encryption.Encrypt(runCompileTemplate)}.dll")))
            {
                throw new Exception("没找到模板缓存 .dll");
            }

            return(str1);
        }
예제 #12
0
파일: ViewEngine.cs 프로젝트: lht6/Furion
        /// <summary>
        /// 通过缓存解析模板
        /// </summary>
        /// <param name="content"></param>
        /// <param name="model"></param>
        /// <param name="cacheFileName"></param>
        /// <param name="builderAction"></param>
        /// <returns></returns>
        public async Task <string> RunCompileFromCachedAsync <T>(string content, T model, string cacheFileName = default, Action <IViewEngineOptionsBuilder> builderAction = null)
            where T : class, new()
        {
            var fileName = cacheFileName ?? MD5Encryption.Encrypt(content);

            IViewEngineTemplate <ViewEngineModel <T> > template;

            if (File.Exists(Penetrates.GetTemplateFileName(fileName)))
            {
                template = await ViewEngineTemplate <ViewEngineModel <T> > .LoadFromFileAsync(fileName);
            }
            else
            {
                template = await CompileAsync <ViewEngineModel <T> >(content, builderAction);

                await template.SaveToFileAsync(fileName);
            }

            var result = await template.RunAsync(u =>
            {
                u.Model = model;
            });

            return(result);
        }
        public ActionResult EditProfile(EvernoteUser model, HttpPostedFileBase ProfileImage, string txtNewPass)
        {
            ModelState.Remove("ModifiedUsername"); // bunun ile alakalı bir validation kontrolu yapılmasını istemiyorsan
            if (ModelState.IsValid)
            {
                if (ProfileImage != null &&
                    (ProfileImage.ContentType == "image/jpeg" ||
                     ProfileImage.ContentType == "image/jpg" ||
                     ProfileImage.ContentType == "image/png"))
                {
                    string filename = $"user_{model.Id}.{ProfileImage.ContentType.Split('/')[1]}";

                    ProfileImage.SaveAs(Server.MapPath($"~/Images/{filename}"));
                    model.ProfileImageFileName = filename;
                }
                model.Password = MD5Encryption.MD5Sifrele(txtNewPass.ToString());
                BusinessLayerResult <EvernoteUser> res = eum.UpdateProfile(model);

                if (res.Errors.Count > 0)
                {
                    ErrorViewModel errorNotify = new ErrorViewModel()
                    {
                        Title          = "Profile Güncellenemedi.",
                        Items          = res.Errors,
                        RedirectingUrl = "/Home/EditProfile"
                    };
                    return(View("Error", errorNotify));
                }
                CurrentSession.Set <EvernoteUser>("login", res.Result);// Profil güncellendiği için session güncellendi..
                return(RedirectToAction("ShowProfile"));
            }

            return(View(model));
        }
예제 #14
0
        public TRequest Post <TResponse, TRequest>(string Url, TResponse Response)
        {
            string json = Response.ToJson();
            string md5  = MD5Encryption.Encrypt(json);
            string str  = CreatePostHttpResponse(BaseUrl + Url, json + md5);

            return(str.ToObj <TRequest>());
        }
예제 #15
0
        public async Task <IActionResult> GetByUid(string uid)
        {
            string hashedUid = MD5Encryption.CalculateMD5Hash(uid);
            var    results   = await(from o in _db.XRefSpecObjects
                                     where o.HashedUid == hashedUid
                                     orderby o.Uid
                                     select o.XRefSpecJson).ToListAsync();

            return(Json(results));
        }
예제 #16
0
        public void Register(TypeAdapterConfig config)
        {
            config.ForType <TbAdmin, AdminDto>()
            .IgnoreNullValues(true)     // 忽略空值映射
            .Ignore(dest => dest.Password);

            config.ForType <AdminDto, TbAdmin>()
            .IgnoreNullValues(true)     // 忽略空值映射
            .IgnoreIf((src, dest) => src.Password == "", dest => dest.Password)
            .Map(desc => desc.Password, src => MD5Encryption.Encrypt(src.Password));
        }
예제 #17
0
 private void btnEncrypt_Click(object sender, EventArgs e)
 {
     if (cbHMACMode.Checked)
     {
         tbToText.Text = HMACMD5Encryption.Encrypt(tbFromText.Text, tbHMAPassword.Text);
     }
     else
     {
         tbToText.Text = MD5Encryption.Encrypt(tbFromText.Text);
     }
 }
예제 #18
0
        /// <summary>
        /// 校验密码
        /// </summary>
        /// <param name="accountId">用户Id</param>
        /// <param name="password">原密码</param>
        /// <returns>校验成功返回True,否则返回False</returns>
        public static bool VerifyPassword(long accountId, string password)
        {
            Account validAccount = Account.FindById(accountId);

            if (validAccount != null && MD5Encryption.VerifyMd5Hash(password, validAccount.Password))
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
예제 #19
0
        public IActionResult Create([FromBody] XRefSpec spec)
        {
            if (spec == null)
            {
                return(BadRequest());
            }

            _db.XRefSpecObjects.Add(new XRefSpecObject {
                HashedUid = MD5Encryption.CalculateMD5Hash(spec.Uid),
                Uid       = spec.Uid, XRefSpecJson = JsonUtility.Serialize(spec)
            });
            _db.SaveChanges();
            return(Ok());
        }
예제 #20
0
 public void CreateUser(string name, string password)
 {
     using (IUserService userSvc = new UserService())
     {
         userSvc.CreateAsync(new User()
         {
             Name     = name,
             Password = MD5Encryption.Md5(password),
             RealName = "超级管理员",
             Sex      = Gender.Woman,
             Phone    = "17629780070"
         });
     }
 }
예제 #21
0
        /// <summary>
        /// 测试 MD5 加密
        /// </summary>
        /// <returns></returns>
        public string TestMD5Encrypt(string text, bool uppercase)
        {
            var data1 = MD5Encryption.Encrypt(text, uppercase);
            var data2 = text.ToMD5Encrypt(uppercase);

            var isEqual = data1 == data2;

            if (!isEqual)
            {
                throw new Exception("静态加密和字符串拓展加密不相等");
            }

            return(data1);
        }
예제 #22
0
        /// <summary>
        /// 学生登录
        /// </summary>
        /// <param name="studentNo"></param>
        /// <param name="password"></param>
        /// <returns></returns>
        public async Task <StudentDto> LoginStudent(string studentNo, string password)
        {
            var student = await _studentRepository
                          .FirstOrDefaultAsync(s => s.StuNo.Equals(studentNo));

            if (student == null)
            {
                throw Oops.Oh(StudentErrorCodes.s1204);
            }
            if (!MD5Encryption.Compare(password, student.Password))
            {
                throw Oops.Oh(StudentErrorCodes.s1201);
            }
            return(student.Adapt <StudentDto>());
        }
예제 #23
0
        private int SaveData(TextReader reader)
        {
            XRefMap xrefMap = YamlUtility.Deserialize <XRefMap>(reader);

            foreach (var spec in xrefMap.References)
            {
                XRefSpecObject xrefSpec = new XRefSpecObject();
                xrefSpec.Uid          = spec["uid"];
                xrefSpec.HashedUid    = MD5Encryption.CalculateMD5Hash(xrefSpec.Uid);
                xrefSpec.XRefSpecJson = JsonUtility.Serialize(spec);
                _db.XRefSpecObjects.Add(xrefSpec);
            }
            _db.SaveChanges();
            return(0);
        }
예제 #24
0
        /// <summary>
        /// 验证登录
        /// </summary>
        /// <param name="loginId">登录Id</param>
        /// <param name="password">密码</param>
        /// <returns>验证成功返回用户实例,否则返回Null</returns>
        public static Account VerifyLogin(string user, string password)
        {
            Account validAccount = Account.FindOne(x => x.LoginId == user);

            if (validAccount != null &&
                validAccount.IsEnabled == true &&
                MD5Encryption.VerifyMd5Hash(password, validAccount.Password))
            {
                return(validAccount);
            }
            else
            {
                return(null);
            }
        }
예제 #25
0
        /// <summary>
        /// 教师登录
        /// </summary>
        /// <param name="teacherNo"></param>
        /// <param name="password"></param>
        /// <returns></returns>
        /// <exception cref="Exception"></exception>
        public async Task <TeacherDto> LoginTeacher(string teacherNo, string password)
        {
            var teacher = await _teacherRepository
                          .FirstOrDefaultAsync(u => u.TeacherNo.Equals(teacherNo));

            if (teacher == null)
            {
                throw Oops.Oh(TeacherErrorCodes.t1402);
            }
            if (!MD5Encryption.Compare(password, teacher.Password))
            {
                throw Oops.Oh(TeacherErrorCodes.t1403);
            }

            return(teacher.Adapt <TeacherDto>());
        }
예제 #26
0
        /// <summary>
        /// 管理员登录
        /// </summary>
        /// <param name="adminDto"></param>
        /// <returns></returns>
        /// <exception cref="Exception"></exception>
        public async Task <AdminDto> LoginAdmin(AdminDto adminDto)
        {
            var admin = await _adminRepository
                        .Where(
                u => u.Username.Equals(adminDto.Username))
                        .FirstOrDefaultAsync();

            if (admin == null)
            {
                throw Oops.Oh(AdminErrorCodes.a1002);
            }
            if (!MD5Encryption.Compare(adminDto.Password, admin.Password))
            {
                throw Oops.Oh(AdminErrorCodes.a1001);
            }
            return(admin.Adapt <AdminDto>());
        }
예제 #27
0
        public async Task <UserProfile> AddAsync([Required] AddUserInput input)
        {
            // 判断账号是否存在
            var isExist = await _userRepository.AnyAsync(u => u.Account.ToLower() == input.Account.Trim().ToLower());

            if (isExist)
            {
                throw Oops.Oh(SystemErrorCodes.u1003);
            }

            var addUser = input.Adapt <User>();

            addUser.Password = MD5Encryption.Encrypt(input.Password.Trim());

            var entryEntity = await _userRepository.InsertNowAsync(addUser);

            return(entryEntity.Entity.Adapt <UserProfile>());
        }
예제 #28
0
        /// <summary>
        /// 找回密码
        /// </summary>
        /// <param name="stuNo"></param>
        /// <param name="idCard"></param>
        /// <param name="newPass"></param>
        /// <returns></returns>
        /// <exception cref="Exception"></exception>
        public async Task <StudentDto> ForgetPass(string stuNo, string idCard, string newPass)
        {
            var stu = await _studentRepository.Where(x => x.StuNo == stuNo).FirstOrDefaultAsync();

            if (stu == null)
            {
                throw Oops.Oh(StudentErrorCodes.s1204);
            }
            // 判断身份证后6位是否正确
            if (idCard != stu.IdCard.Substring(stu.IdCard.Length - 6, 6))
            {
                throw Oops.Oh(StudentErrorCodes.s1206);
            }
            // 修改密码
            stu.Password = MD5Encryption.Encrypt(newPass);
            var newStu = await _studentRepository.UpdateAsync(stu);

            return(newStu.Entity.Adapt <StudentDto>());
        }
예제 #29
0
파일: HomeService.cs 프로젝트: wkxuan/code
        public User GetUserByCode(string code, string password)
        {
            bool b = DbHelper.ExecuteTable("select 1 from STATION where TYPE=3  and STATIONBH= {{code}}", new zParameter("code", code)).Rows.Count > 0;

            if (!b)
            {
                throw new Exception($"终端{code}不存在或类型不匹配");
            }
            if (password != MD5Encryption.Encrypt($"z.DGS.LoginSalt{code}"))
            {
                throw new Exception($"终端{code}的密钥不正确");
            }
            return(new User()
            {
                Code = code,
                Id = code,
                Name = code
            });
        }
        public ActionResult PasswordForget(MailModel2 model)
        {
            string sifre    = RastgeleUret();
            string sifreMD5 = MD5Encryption.MD5Sifrele(sifre);

            BusinessLayerResult <EvernoteUser> res = eum.GetUserByEmail(model);

            //var response = Request["g-recaptcha-response"];
            //const string secret = "6LcjInAUAAAAADx99wOz1kr3QVnSrgYrX61f0eU0";

            //var client = new WebClient();
            //var reply =
            //    client.DownloadString(
            //        string.Format("https://www.google.com/recaptcha/api/siteverify?secret={0}&response={1}", secret, response));

            //var captchaResponse = JsonConvert.DeserializeObject<CaptchaResponse>(reply);

            //if (!captchaResponse.Success)
            //    TempData["Message"] = "Lütfen güvenliği doğrulayınız.";
            //else
            //{

            if (res.Errors.Count > 0)
            {
                res.Errors.ForEach(x => ModelState.AddModelError("", x.Message));

                return(View(model));
            }

            StringBuilder body = new StringBuilder();

            body.AppendLine("Merhaba, " + res.Result.Username);
            body.AppendLine("\nYeni Şifreniz : " + sifre);
            MailHelper.SendMail(body.ToString(), model.Mail, "Makalemre.com Sitesi Yeni Şifre");
            ViewBag.Success = true;

            res.Result.Password = sifreMD5;
            BusinessLayerResult <EvernoteUser> res2 = eum.Update(res.Result);

            //}
            return(View());
        }