如何将数据注释用法限制为特定属性数据类型?

时间:2011-03-31 14:32:08

标签: c# asp.net-mvc custom-attributes data-annotations

我有一个继承自ValidationAttribute的验证属性。但是,此属性的特定用法仅适用于列表(实际上是IEnumerable)。如何指定此属性的用法仅用于从IEnumerabe继承的项目?感谢。

1 个答案:

答案 0 :(得分:0)

您在寻找编译时检查吗?如果是这样那是不可能的。 AttributeTargets枚举(与AttributeUsageAttribute一起使用)就是确定属性可以去哪里,而且非常简单。在运行时,您可以检查类型是否为IEnumerable类型,如果不是则抛出异常。