次のコードを使用します。
protected object GetProperty(object target, string fieldName)
{
Type type = target.GetType();
PropertyInfo mi = type.GetProperty(
fieldName, BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.GetProperty);
object obj = mi.GetValue(target, null);
return obj;
}
.NET 3.5 で動作します。しかし、.NET 4 に変更すると、mi が null になります。なんで?