【发布时间】:2010-08-30 16:19:27
【问题描述】:
我正在寻找使用验证应用程序块的基于配置的验证示例。我找到了this
我想问是否有人有替代解决方案来使用 EL VAB 5.0 来实现基于配置的验证。我从 DataAnnotations 开始,但很快发现某些属性需要不同类型的验证,具体取决于谁在使用应用程序。
另外,如果有人有更多关于使用 VAB 进行配置的示例以及关于我可能遇到的任何建议,请分享。
【问题讨论】:
-
我想知道在运行时动态附加属性的某种 IoC 容器是否可以工作?
-
它对我有用,但还没有在任何地方看到它的样本。
-
我可能已经猜到了,这样的事情甚至是不可能的。属性是类型元数据,因此在运行时附加它们的唯一方法是生成一个全新的类型。话虽如此,您可以使用不同的模型类型,它们都继承一个基本类型,但定义唯一的验证规则。即产品 > AdminProduct > ClientProduct。除非特别标记,否则不会继承属性值。
-
@Nathan Taylor, @Mare,如果您正在寻找动态验证的“内置”解决方案,可以通过 ModelValidatorProvider 在运行时附加 DataAnnotation 属性。我甚至使用这种技术从数据库中提取验证信息,用于一个非常动态验证的系统。
-
请发布详细信息作为答案
标签: asp.net-mvc validation enterprise-library validation-application-bl