如何在ASP.NET MVC Razor中设置CAPTCHA.MVC5验证码区分大小写且为字母数字组合
实现Captcha.Mvc5区分大小写+字母数字组合验证码的配置步骤
- 第一步:全局配置验证码字符集和大小写规则
只需要在项目的Global.asax.cs文件的Application_Start方法中添加如下配置即可,原有其他启动配置无需修改:
protected void Application_Start() { // 原有启动逻辑保留,例:AreaRegistration.RegisterAllAreas()、RouteConfig.RegisterRoutes(RouteTable.Routes)等 // 新增配置:设置验证码字符集为大小写英文字母+数字组合 CaptchaMvc.HtmlHelpers.CaptchaHelper.Characters = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"; // 新增配置:关闭默认的忽略大小写规则,启用区分大小写验证 CaptchaMvc.HtmlHelpers.CaptchaHelper.IgnoreCase = false; }
- 第二步:保持原有调用逻辑兼容
你不需要修改当前Razor页面的代码,Controller中的验证码验证逻辑也可以保持原有写法,框架会自动套用你设置的全局规则:
[HttpPost] public ActionResult SubmitForm(FormModel model) { if (!this.IsCaptchaValid("")) { ViewData["Captchaerror"] = "验证码输入错误,请重新输入"; return View(model); } // 后续业务逻辑 }
如果你需要单独对某个页面的验证码做特殊配置,也可以直接在@Html.Captcha的重载方法中指定对应参数,优先级高于全局配置。
内容的提问来源于stack exchange,提问作者Syed Akhter
相关产品推荐
相关产品推荐

