代码之家  ›  专栏  ›  技术社区  ›  Spoike Otávio Décio

如何在ASP.NET MVC RC中进行验证?

  •  3
  • Spoike Otávio Décio  · 技术社区  · 16 年前

    ASP.NET MVC是否提供标准验证程序功能,或者您是否必须手动创建自己的验证?如果是后者,您是否可以在ASP.NET MVC Web应用程序上使用第三方验证程序?

    5 回复  |  直到 16 年前
        1
  •  4
  •   Spoike Otávio Décio    16 年前

    在我发布这个答案后不久,我发现 xval 这是ASP.NET MVC的验证框架。

        2
  •  3
  •   georg    16 年前

    ASP.NET MVC包含以下方法 Html.ValidationSummary() Html.ValidationMessage() . 如果您使用 TryUpdateModel . 您还可以手动验证并自己设置错误消息。 Here 是如何使用它的一个例子。

        3
  •  1
  •   Chad Moran    16 年前

    戴维海登 wrote an article 在www.codebetter.com上描述了一种处理验证的好方法。当然,XVAL是一个选项,但是理解它总是很好的。

        4
  •  1
  •   tvanfosson    16 年前

    我实现了我在斯蒂芬·沃尔特的代码的一个变体 blog . 我通过定义一个包含getRuleViolations()方法的ivalidatedEntity接口,并实现调用getRuleViolations()的分部onValidate方法,并在违规次数为非零时引发自定义异常,将其与linq2sql模型一起使用。在控制器中,这会激发数据上下文的SubmitChanges。如果我得到一个异常,我会通过getRuleViolations()方法重新查询模型,以构建模型错误,并将其传递回视图。

        5
  •  1
  •   keparo    16 年前

    您也可以签出 .net validation framework . 它是一个规则框架,允许您创建验证器,将验证器应用于规则,将规则附加到模型,并在客户端和服务器上的运行时检查这些规则。它提供了灵活的配置规则的方法——为流畅和强类型配置大量使用LINQ。它还提供了扩展点来创建自己的客户机脚本生成器和规则。

    该框架利用了MVC RC HTMLHelpers和默认约定。

    如果下载最新的源代码,您可以看到在splitbranch->qsaspmvc快速启动项目中工作的框架示例。它仍在积极发展。