I created an EvaluateAttribute, and I want it to accept various IEvaluators specified like this:
[Evaluate(CatEvaluator, DogEvaluator)]
public void someMethod()
{
}
Since CatEvaluator and DogEvaluator are types, I set up my attribute class like this:
public class EvaluateAttribute<T> : Attribute where T:IAccessEvaluator
and constructor:
public EvaluateAttribute(params T [] accessEvaluators)
{
_accessEvaluators = accessEvaluators;
}
C# doesn't like generics and attributes though, it would seem. Is there a solution to this?
I want my attribute to instantiate each type with CreateInstance and run an evaluate method specific in IAccessEvaluator.