使用 ASP.NET MVC 实现字段验证的最佳方法是啥? [关闭]
Posted
技术标签:
【中文标题】使用 ASP.NET MVC 实现字段验证的最佳方法是啥? [关闭]【英文标题】:What's the best way to implement field validation using ASP.NET MVC? [closed]使用 ASP.NET MVC 实现字段验证的最佳方法是什么? [关闭] 【发布时间】:2010-09-06 05:10:18 【问题描述】:我正在使用 ASP.NET 构建一个公共网站,作为可交付成果的一部分,我需要创建一个管理站点来输入公共站点中显示的内容的数据,我想知道人们使用什么技术或程序来验证使用 ASP.NET MVC 的条目。
【问题讨论】:
【参考方案1】:看看JQuery Validation plugin 这个插件太棒了,它实现起来很干净,并且具有您可能需要的所有功能,包括通过 AJAX 进行远程验证。
还可以找到一个示例 MVC 控制器方法here,它基本上使用 JsonResult 操作类型,如:
public JsonResult CheckUserName(string username)
return Json(CheckValidUsername(username));
【讨论】:
现在(使用 asp.net mvc2 preview 2+)jquery 验证与模型验证集成!【参考方案2】:IMO 将 xVal 与 jQuery 和 DataAnnotationsModelBinder 结合使用是最佳组合。
但有时,有些验证规则无法在客户端完全检查,因此您需要使用远程客户端验证。
我找到了使用 xVal / jQuery.validate 实现远程客户端验证的方法,以便
验证规则仅保留在您的 ASP.NET MVC 模型中 您只需编写每个验证规则一次,而且只能使用易于测试的 C# 代码。没有 javascript 或其他客户端对应物。 无需分支或以其他方式修改 xVal 或 jquery.validate 对于每个新的远程表单验证规则,您只需从本文中显示的基类派生。我为此写了blog article,描述了所有细节。
【讨论】:
我不知道你怎么没有得到更多的UPS。太棒了,谢谢!【参考方案3】:我最喜欢使用基于模型的属性执行客户端和服务器验证的方式。我写了一篇关于这个的短文并发布了源代码,基本上可以让你创建一个这样的类
class User
[Required]
public string Nameget;set;
[Email][Required]
public string Email get;set;
将生成适当的 javascript 代码来执行客户端验证,服务器端验证运行器将验证您提交的表单。
阅读here的帖子
【讨论】:
以上是关于使用 ASP.NET MVC 实现字段验证的最佳方法是啥? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章