Ejemplo n.º 1
0
 protected virtual object GetFieldValueFromString(FieldSettingsBase <T> fieldSettings, string memberValue)
 {
     if (fieldSettings.IsNullable && (string.IsNullOrEmpty(memberValue) || memberValue.Equals(fieldSettings.NullValue)))
     {
         return(null);
     }
     memberValue = fieldSettings.PadLeft
                     ? memberValue.TrimStart(new char[] { fieldSettings.PaddingChar })
                     : memberValue.TrimEnd(new char[] { fieldSettings.PaddingChar });
     try
     {
         return(fieldSettings.FieldValueConverter.FromString(memberValue, fieldSettings.FormatProvider));
     }
     catch (Exception ex)
     {
         var errorInfo = new ParserErrorInfo
         {
             ErrorMessage = ex.Message,
             FieldName    = fieldSettings.PropertyInfo.Name,
             FieldValue   = memberValue,
             FieldType    = fieldSettings.PropertyInfo.PropertyType
         };
         throw new ParserErrorException(errorInfo, ex);
     }
 }
Ejemplo n.º 2
0
 private static bool DefaultOnReadError(ParserErrorInfo errorInfo, Exception exception)
 {
     return(false);
 }
Ejemplo n.º 3
0
 private static string BuildErrorMessage(ParserErrorInfo parserErrorInfo)
 {
     return($"Error Parsing field {parserErrorInfo.FieldName}: {parserErrorInfo.ErrorMessage}");
 }
Ejemplo n.º 4
0
 public ParserErrorException(ParserErrorInfo parserErrorInfo)
     : base(BuildErrorMessage(parserErrorInfo))
 {
     ParserErrorInfo = parserErrorInfo;
 }
Ejemplo n.º 5
0
 public ParserErrorException(ParserErrorInfo parserErrorInfo, Exception innerException)
     : base(BuildErrorMessage(parserErrorInfo), innerException)
 {
     ParserErrorInfo = parserErrorInfo;
 }