使用MVC4我需要从自定义ValidationAttribute
中检索当前ModelMetadata
。原因是验证属性需要知道哪些其他属性被附加到正在验证的特定属性。从验证属性中检索模型元数据
在具体它检查是否有一个UppercaseAttribute
附属于它;如果是这种情况,那么它将执行不同的逻辑路径。如果有可能从ValidationAttribute
内抢ModelMetadata
,我将使用下面的代码来检查它:
ModelMetadata.ContainerType
.GetProperty(ViewData.ModelMetadata.PropertyName)
.GetCustomAttributes(typeof(UppercaseAttribute), true)
首先,是有可能从一个自定义ValidationAttribute
内检索ModelMetadata
。其次,上述代码是检查属性是否具有特定属性的最佳实践。
您是否仅需要此特定型号的验证属性?如果是这样的话,你可以发布你的模型吗? – ataravati