private static void PrintFieldSet(FieldSet fieldSet, FieldInfo[] fields, string prefix) { foreach (var field in fields) { if (fieldSet.Contain(field.Tag)) { if (field.ChildFields.Length > 0) { Group group = fieldSet.GetGroup(field.Tag); Log(prefix + field.Tag.ToString() + "=> group of " + group.NumberOfInstances + " item(s)"); PrintGroup(group, field.ChildFields, prefix + " "); Log(prefix + "<= end of group"); } else { Log(prefix + field.Tag.ToString() + '=' + fieldSet.Get(field.Tag)); } } } }