我所有关于使用ASP.NET MVC,但我希望改进的领域之一是客户端验证。

我知道最新版本(预览版5)有很多新的验证功能,但它们似乎都是在页面发布后。

我看过一篇有趣的文章 Steve Sanderson ...使用实时验证,Castle.Components.Validator.dll和他制作的Validator框架。

我在我的项目中使用过它,但是我希望它能够集成到官方的ASP.NET MVC版本中。我绝对认为业务规则应该驻留在模型上或控制器中而不是视图中。

你们有没有使用类似的方法?

您是否意识到将这样的内容添加到官方ASP.NET MVC版本中?

有帮助吗?

解决方案

“显然,您仍需要在服务器端验证禁用javascript的小部分用户的输入。”

只是对此评论的更新。服务器端验证与禁用JavaScript的用户无关。相反,出于安全原因需要它,并且需要进行无法在客户端上执行的复杂验证。表单应始终具有服务器端验证。客户端验证只是为了方便起见。

恶意用户可以轻松地将数据发布到您的表单,绕过您所拥有的任何客户端验证。 绝不信任输入数据!

其他提示

我同意其他海报,客户端验证严格用于改善用户体验。

查看 JQuery Validation 插件。开始使用基本验证非常容易 - 只需一行JS,并在输入控件中添加类名。它也非常强大。你可以扩展到你想做的任何事情。

LiveValidation是另一个有用的javascript库,可以提供帮助。请在此处查看示例(使用ASP.NET MVC):

http:// blog.codeville.net/2008/09/08/thoughts-on-validation-in-aspnet-mvc-applications/

看起来这个区域将在ASP.NET MVC 2中看到很多改进

  

http://weblogs.asp.net/scottgu/archive/2009/07/31/asp-net-mvc-v2-preview-1-released.aspx

查看这篇博客文章。它描述了如何使用xVal自动生成客户端验证规则,以及如何自动实现远程客户端验证。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top