45

我正在使用 ASP.NET 构建一个公共网站,作为可交付成果的一部分,我需要做一个管理站点来输入公共站点中显示的内容的数据,我想知道人们使用什么技术或程序来验证使用 ASP 的条目.NET MVC。

4

3 回答 3

26

看看JQuery Validation 插件,这个插件很棒,它实现起来很干净,并且具有您可能需要的所有功能,包括通过 AJAX 进行的远程验证。

还可以在此处找到示例 MVC 控制器方法,该方法基本上使用 JsonResult 操作类型,例如:

public JsonResult CheckUserName(string username)
{
    return Json(CheckValidUsername(username));
}
于 2008-08-25T03:04:28.937 回答
6

IMO 使用 xVal 与 jQuery 和 DataAnnotationsModelBinder 是最好的组合。

但有时,有些验证规则无法在客户端完全检查,因此您需要使用远程客户端验证。

我想出了用 xVal / jQuery.validate 实现远程客户端验证的方法,这样

  • 验证规则仅保留在您的 ASP.NET MVC 模型中
  • 每个验证规则只需编写一次,而且只能在易于测试的 C# 代码中编写。没有 JavaScript 或其他客户端对应物。
  • 无需分支或以其他方式修改 xVal 或 jquery.validate
  • 对于每个新的远程表单验证规则,您所要做的就是从本文中显示的基类派生。

我为此写了一篇博客文章,描述了所有细节。

于 2009-06-21T11:59:54.653 回答
1

我最喜欢使用基于模型的属性执行客户端和服务器验证的方式。我写了一篇关于这个的短文并发布了源代码,基本上可以让你创建一个这样的类



class User {

    [Required]
    public string Name{get;set;}

    [Email][Required]
    public string Email {get;set;}
}

并且将生成适当的 javascript 代码来执行客户端验证,并且服务器端验证运行器将验证您提交的表单。

在这里阅读帖子

于 2008-11-02T15:26:52.210 回答