I'm basically asking if we can fake some sort of multiple inheritance on attribute classes. I have some view models with a lot of properties that are all getting the same combinations of attributes for field length, formatting, some custom stuff, etc. There are probably on the order of 50 fields like this. Some of the attributes have constants in them.
This seems really bad as code duplication. If I want to change the formatting or any of these constants a bit, I have to find and fix every field individually. Is it possible for me to create some single [MyCustomFieldType] attribute that simply behaves as all of those other attributes combined, so it stays DRY?
edit: What I mean about code duplication is that each property has multiple attributes; I'm not referring to the fact that there are multiple properties. I understand that even if I had one attribute to place, I would have to place it many times. But then at least I have one place (the attribute class) to change things like format strings or other numeric constant parameters.