public override string Name
{
- get { return TypeInfoBest.Name; }
+ get
+ {
+ Type type = TypeInfoBest;
+ if (type.DeclaringType != null)
+ return type.DeclaringType.Name + "+" + type.Name;
+ return type.Name;
+ }
}
public override string Type
}
// serializable attribute
- AddFakeAttribute (typeMono.IsSerializable, typeMS.IsSerializable, "System.SerializableAttribute");
+ // AddFakeAttribute (typeMono.IsSerializable, typeMS.IsSerializable, "System.SerializableAttribute");
AddFakeAttribute (typeMono.IsAutoLayout, typeMS.IsAutoLayout, "System.AutoLayoutAttribute");
AddFakeAttribute (typeMono.IsExplicitLayout, typeMS.IsExplicitLayout, "System.ExplicitLayoutAttribute");
AddFakeAttribute (typeMono.IsLayoutSequential, typeMS.IsLayoutSequential, "System.SequentialLayoutAttribute");
case MemberTypes.Field:
return !((FieldInfo) mi).IsPrivate && !((FieldInfo) mi).IsFamilyAndAssembly && !((FieldInfo) mi).IsAssembly;
case MemberTypes.NestedType:
- return !((Type) mi).IsNestedPrivate;
+ return !((Type) mi).IsNestedPrivate && !((Type) mi).IsNestedAssembly && !((Type) mi).IsNestedFamANDAssem;
case MemberTypes.Property: // great, now we have to look at the methods
PropertyInfo pi = (PropertyInfo) mi;
MethodInfo miAccessor = pi.GetGetMethod ();