代码之家  ›  专栏  ›  技术社区  ›  Ian Nelson

使用验证应用程序块验证集合是否至少有一个项

  •  2
  • Ian Nelson  · 技术社区  · 16 年前

    使用企业库4.1验证应用程序块,如何验证集合属性是否至少包含一个项?

    2 回复  |  直到 16 年前
        1
  •  1
  •   Randy Levy    16 年前

    我假设你的意思是开箱即用。如果是这样,那么我认为没有办法直接验证集合中项目的数量。

    以下是您可以尝试的其他方法:

    1. 命令您只处理空集合而不是空集合,并使用非空验证器。但不实际。

    2. 使用自验证,并让对象在代码中验证集合的项数是否正确。可以,但最好在配置文件中进行验证。

    3. 将集合计数公开为属性。可以这样做,例如,假设一个雇员集合在包含该集合的对象上具有EmployeeCount属性,或者您可以创建自己的公开Count属性的自定义集合。然后可以使用范围验证器对Count属性进行验证。

    4. 创建一个自定义验证器来验证集合中的项数——类似于CollectionCountrangeValidator。


    如果我想快速开发一些东西,我可能会选择3。但是,选项4非常适合企业库方法,还允许类设计独立于验证需求。另外,您可以在下一个项目中重用它。:)如果一个列表做得很好,有人真的会错过创建自己的收藏吗?

        2
  •  1
  •   Dude Pascalou    16 年前

    这已在中实现 EntLib Contrib . 这称为CollectionCountValidator。