J'utilise dotnet 2.0MethodInfo et délégués
Je sais que, avec une valeur EventInfo, vous pouvez boucle à travers les types de l'Assemblée et trouver toutes les méthodes qui correspondent à la définition de délégué EventInfo (EventInfo.EventHandlerType)
Existe-t-il un moyen de connaître les délégués disponibles pour un MethodInfo donné dans la fonction Delegate.CreateDelegate() sans passer d'abord en revue tous les assemblys référencés pour trouver toutes les définitions Delegate.
Ou suis-je coincé faire ce qui suit:
public bool MethodInfoDelegateSearch(MethodInfo mi) {
System.Collections.Generic.List<Type> delegateTypes = new System.Collections.Generic.List<Type>();
foreach (Assembly a in AppDomain.CurrentDomain.GetAssemblies())
foreach (Type t in a.GetTypes()) {
if (t.IsSubclassOf(typeof(Delegate)))
delegateTypes.Add(t);
}
for (int i = 0; i < delegateTypes.Count; i++) {
Type t = delegateTypes[i];
/*
* here is where to attempt match the delegate structure to the MethodInfo
* I can compare parameters or just attempt to create the delegate
*/
try {
Delegate.CreateDelegate(t, mi, true);
return true;
} catch {
}
}
return false;
}