【问题标题】:Using DataAnnotations 4.0使用 DataAnnotations 4.0
【发布时间】:2011-02-27 10:42:04
【问题描述】:

我将 DA 4.0 与 MVC 应用程序一起使用,并创建了一个自定义验证器,如下所示:

public static ValidationResult NumberOfItems(int numItems, ValidationContext pValidationContext)
{
    if (numItems == 1)
    {
        //Tag as critical error
        //return new ValidationResult... 
    }

    if (numItems > 1 && numItems <= 10)
    {
        //Tag as non critical error
    }

    //Else it's successful
    return ValidationResult.Success;
}

我想将错误消息标记为严重错误与否。如果它不是严重错误,我想在我的视图中访问它并以不同的方式呈现它。

所以,这有两个部分:

  1. 在自定义验证器中将失败标记为不同类型
  2. 修改默认 ModelBinder 以识别严重错误

我该怎么做?

【问题讨论】:

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


    【解决方案1】:

    您的两个问题都需要重写一大堆 MVC 的内部错误处理代码。没有简单的方法可以将错误严重性添加到发生 ModelState 和 ViewModel 验证的所有不同位置。

    “我该怎么做?”的唯一答案是“有很多自定义代码”。 ;)

    【讨论】:

    • 如果我不使用数据注释并使用不同的验证框架怎么办?
    • @Dave Schilling 那么你需要问一个不同的问题。 ;)
    猜你喜欢
    • 2016-08-13
    • 1970-01-01
    • 1970-01-01
    • 2011-01-04
    • 1970-01-01
    • 2011-06-21
    • 1970-01-01
    • 2021-03-17
    • 1970-01-01
    相关资源
    最近更新 更多