That's actually what I'm trying to do, but unless I'm missing something, you can't pass a dictionary as a parameter to an attribute. It give the error, "constant expression is required". You can't pass the dictionary through the constuctor nor to a field or property.
That would be perfect if we could, as all of our lookup data comes from dictionarys or key/value type collections. I think that we've already dismissed the possibility of using an enum, because you can't have a name and a value if they're both strings, and the name cannot have spaces or special characters.
At this point, I'm thinking that the best option might be to pass in a property name as a string, and use reflection to call it...
<AvailableItems("LookupData.StatusCodes")>_
then use reflection so call the property and retrieve the dictionary, assuming that 'LookupData' is the static class, and StatusCodes is a property that returns a dictionary.
Any other ideas would be appreciated.