private FieldInfo[] BuildSerializableFieldsArray(Type type)
{
MemberInfo[] members = type.FindMembers(MemberTypes.Field,
BindingFlags.Instance|BindingFlags.Public|BindingFlags.NonPublic,
null, null);
ArrayList fields = new ArrayList();
foreach (FieldInfo field in members)
{
if (field.IsNotSerialized)
{
continue;
}
fields.Add(field);
}
return (FieldInfo[])fields.ToArray(typeof(FieldInfo));
}