public static MethodReference GetMethod(this ModuleDefinition module, string methodName)
{
var resolver = module.AssemblyResolver;
foreach (var assemblyReference in module.AssemblyReferences)
{
var assembly = resolver.Resolve(assemblyReference.Name);
if (assembly != null)
{
foreach (var type in assembly.MainModule.GetAllTypeDefinitions())
{
var methodReference = (from method in type.Methods
where method.Name == methodName
select method).FirstOrDefault();
if (methodReference != null)
{
return methodReference;
}
}
}
}
return null;
}