Consider a generic interface
public interface IA<T>
{
}
and two implementations
public class A1 : IA<string>
{}
public class A2 : IA<int>
{}
I want to write a method that finds the classes who implements IA interface with a specific type
public Type[] Find(IEnumerable<Type> types, Type type)
so that the following call
Find(new List<Type>{ typeof(A1), typeof(A2)}, typeof(string))
will return the type A1
IMPORTANT NOTE
I can assume that all the types passed in as the list will implement IA however not necessarily directly (For example A1 can inherit from BaseA that implements IA<string>)
How can I accomplish this through reflection?
Aucun commentaire:
Enregistrer un commentaire