【问题标题】:Generating client-side validation from LLBLGen validation从 LLBLGen 验证生成客户端验证
【发布时间】:2009-04-13 11:18:48
【问题描述】:

我一直在寻找,似乎还没有人破解过这个问题,但我想我也应该问问这里的社区,看看有没有什么问题。

有没有办法让客户端验证(jQuery、实时验证等)自动从 LLBLGen 的内置验证中获取验证规则?

LLBLGen(和其他类似 Subsonic)已经知道一个字段不能为空,必须少于 100 个字符等,并且似乎不必在所有地方都设置这些字段。

【问题讨论】:

    标签: asp.net-mvc llblgenpro


    【解决方案1】:

    查看 xVal...它会根据您的模型中的验证生成 jQuery Validation

    xVal @ CodePlex

    Introduction to xVal blog post

    我不知道 LLBL 验证是如何工作的,也不知道 xVal 中是否有任何原生支持。但如果没有,只需创建一个 IRulesProvider - 毫无疑问,它会对许多其他 LLBL 用户派上用场。

    我认为 LightSpeed ORM 也做了类似的事情。看这里MVC and LightSpeed – Part 4 – Model Binding

    【讨论】:

    • 但是,对于 xVal 应注意:“重要提示:xVal 建议仅用于 ASP.NET MVC 1.0。如果您使用的是 ASP.NET MVC 2.0或更高版本,该框架已内置支持直接从模型元数据生成客户端验证逻辑。如果您愿意,您仍然可以使用 xVal,但不会积极开发或支持它。”
    【解决方案2】:

    Jquery.Validate 非常棒。它可以验证信用卡号、日期、最小和最大字符以及许多其他功能。链接在这里,使用起来非常简单。

    http://docs.jquery.com/Plugins/Validation

    基本上,您所做的只是在加载页面时注册 .js 文件,并在声明输入类时,输入“验证”或“验证日期”或其他任何内容,它会智能地为您完成。他们再次在链接中提供示例和文档。希望这对您有所帮助。

    【讨论】:

    • 我想要一些可以强制执行服务器端验证和客户端验证的东西。就像网络表单验证器一样。
    • 在这种情况下你是 SOL。您想在视图上发生的事情和代码背后/控制器中发生的事情之间创建一个分离的关注点。有时这意味着重复的代码做同样的事情,只是我们必须处理的事情,抱歉。
    • 另外,您将如何在不发布到服务器进行检查的情况下同时进行客户端和服务器端验证?您是否将有一个通用处理程序检查通过 jquery post 发送的每个击键?这是一个选择,但你必须做腿部工作。
    • 没有。我想在一个地方设置验证规则,并在客户端和服务器端强制执行它们(无论如何都是简单的),而无需任何额外的编码。似乎是一个白日梦:(
    • 一个词 - “xVal”。见下文。
    【解决方案3】:

    我想说必须创建适当的模板来输出您想要的任何验证代码(或修改现有的)。我不确定是否有任何现有的,但您可以自己创建它们 - 这很容易。

    HTH

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-01-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-10-03
      • 1970-01-01
      相关资源
      最近更新 更多