Fitzchak Yitzchaki
Fitzchak Yitzchaki

Reputation: 9163

Get property name inside the attribute that declared on it

I have an attribute declared on property. How can I get the property name inside the attribute?

Upvotes: 6

Views: 727

Answers (2)

Hans Passant
Hans Passant

Reputation: 942237

This is backwards. The only possible way you can get the attribute value is through PropertyInfo.GetCustomAttributes(). That requires knowing the property name first so you can get the PropertyInfo object from Type.GetProperty().

Upvotes: 1

Darin Dimitrov
Darin Dimitrov

Reputation: 1039398

Sorry to say it but you can't. The attribute has no meaning of knowing to what property/class it is applied.

In general attributes alone are useless (they are just metadata decorating your classes), there must be something reading them at runtime and in order to read an attribute you already have a reference to the property this attribute is applied to, so you already know the property name.

Upvotes: 9

Related Questions