【问题标题】:MVC2 DataAnnotations with Server-side validation带有服务器端验证的 MVC2 DataAnnotations
【发布时间】:2010-04-07 15:37:11
【问题描述】:

如何在不使用 MVC 库的情况下验证包含 DataAnnotations 的实体?在表示层中使用 Model.IsValid 很好,但是当您想确保模型在域/业务层中有效时呢?我是否需要一个单独的验证框架,或者是否有一种我缺少的简单方法?

感谢您的帮助,

标记

【问题讨论】:

    标签: validation asp.net-mvc-2 data-annotations


    【解决方案1】:

    我想你的意思是 ModelState.IsValid 和 Model.IsValid,对吧?好吧,DataAnnotions 根本不依赖 MVC,所以你总是可以使用IValidatableObject 接口。

    或者Validator class 可能更合适,使用Validator.ValidateObject(object, ValidationContext)

    【讨论】:

      【解决方案2】:

      我使用纯 c# 编写了我的验证逻辑,我的业务层包含这些验证,我在整个业务层使用 try 和 catch 块。表示层捕获这些自定义异常,因此错误会在屏幕上显示给用户。我只在数据注释中保留基本验证,例如[必需] 主要用于 ajax 调用和通知用户在不可为空的字段中输入数据,这样我的业务逻辑仍然在我的中间层,它保持一致,它只保留在一个我可以参考的地方。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2012-02-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多