protected override MethodInfo GetCorrectMethod(MethodInfo method)
{
if (Context.HasMixins && _interface2mixinIndex.Contains(method.DeclaringType))
{
return method;
}
ParameterInfo[] paramsInfo = method.GetParameters();
Type[] argTypes = new Type[paramsInfo.Length];
for(int i = 0; i < argTypes.Length; i++)
{
argTypes[i] = paramsInfo[i].ParameterType;
}
MethodInfo newMethod = _targetType.GetMethod(method.Name, argTypes);
if (newMethod == null)
{
//System.Diagnostics.Trace.Write("Target class does not offer the method " + method.Name);
newMethod = method;
}
return newMethod;
}