获取自定义属性属性中的枚举类型

本文关键字:枚举 类型 自定义属性 属性 获取 | 更新日期: 2023-09-27 17:50:30

我们有一个继承自ValidationAttribute的现有自定义类。这个类对c#数据模型类的enum属性值做一些基本的验证。

属性类的构造函数接受一个Type形参,该形参用于匹配应用该属性的字段的类型。

我想获得具有该属性的字段的类型,而不必将其作为参数传递给属性。

这是很容易做到的吗?

获取自定义属性属性中的枚举类型

这是很容易做到的吗?

不,不幸的是,这是根本无法做到的事情。该属性不能访问它所应用的成员

您不能在属性中轻松地做到这一点。您必须使用反射来获取类及其属性,这些属性由属性装饰,并且从那里您可以访问两者。在属性代码中,您不知道哪个对象是它的目标,因此无法访问它们的PropertyInfo