internal ChoJSONRecordFieldConfiguration GetFieldConfiguration(string propertyName, ChoJSONRecordFieldAttribute attr = null, Attribute[] otherAttrs = null, PropertyDescriptor pd = null, string fqm = null, Type subType = null) { if (subType != null) { MapRecordFieldsForType(subType); var fc = new ChoJSONRecordFieldConfiguration(propertyName, attr, otherAttrs); fc.PropertyDescriptor = pd; fc.DeclaringMember = fqm; AddFieldForType(subType, fc); return(fc); } else { if (!JSONRecordFieldConfigurations.Any(fc => fc.Name == propertyName)) { JSONRecordFieldConfigurations.Add(new ChoJSONRecordFieldConfiguration(propertyName, attr, otherAttrs)); } var nfc = JSONRecordFieldConfigurations.First(fc => fc.Name == propertyName); nfc.PropertyDescriptor = pd; nfc.DeclaringMember = fqm; return(nfc); } }
internal ChoJSONRecordFieldConfiguration GetFieldConfiguration(string fn) { fn = fn.NTrim(); if (!JSONRecordFieldConfigurations.Any(fc => fc.Name == fn)) JSONRecordFieldConfigurations.Add(new ChoJSONRecordFieldConfiguration(fn, (string)null)); return JSONRecordFieldConfigurations.First(fc => fc.Name == fn); }