private static object ApplyStringConversion(MemberInfo member, TpsFieldAttribute tpsFieldAttr, object tpsValue) { var memberType = GetMemberType(member); if (tpsFieldAttr is TpsFieldStringAttribute tpsFieldStringAttr && tpsValue != null) { if (memberType != typeof(string)) { throw new TpsParserException($"{nameof(TpsFieldStringAttribute)} is only valid on members of type {typeof(string)} ({member})."); } if (tpsFieldStringAttr.TrimEnd && tpsValue is string tpsStringValue) { return(tpsStringValue.TrimEnd()); } else { return(InvokeToString(member, tpsValue, tpsFieldStringAttr)); } }
private ModelMember(MemberInfo memberInfo, TpsFieldAttribute fieldAttribute) { MemberInfo = memberInfo; FieldAttribute = fieldAttribute; IsRecordNumber = FieldAttribute is null; }