private static MethodInfo GetMethodInfo(MethodInfo mi, MemberInfo memberInfo)
{
if (memberInfo is FieldInfo) {
return mi.MakeGenericMethod ((memberInfo as FieldInfo).FieldType);
}
if (memberInfo is PropertyInfo) {
return mi.MakeGenericMethod ((memberInfo as PropertyInfo).PropertyType);
}
return null;
}