I created an EvaluateAttribute
, and I want it to accept various IEvaluator
s 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
.