Beispiel #1
0
        /// <summary>
        /// Reads a field, as a list of decimals.
        /// </summary>
        /// <param name="key">The column</param>
        /// <returns>The value</returns>
        /// <exception cref="InvalidCastException"></exception>
        public IReadOnlyList <decimal> GetDecimalList(string key)
        {
            string value = GetValue(key);

            if (string.IsNullOrEmpty(value))
            {
                return(null);
            }

            string[] parts = GetList(value);

            List <decimal> res = new List <decimal>(parts.Length);

            foreach (string part in parts)
            {
                decimal entry;
                if (CsvValueParser.TryParseDecimal(part, out entry))
                {
                    res.Add(entry);
                }
                else
                {
                    throw new InvalidCastException( );
                }
            }
            return(res);
        }
Beispiel #2
0
        /// <summary>
        /// Reads a field, as a decimal.
        /// </summary>
        /// <param name="key">The column</param>
        /// <returns>The value</returns>
        /// <exception cref="InvalidCastException"></exception>
        public decimal?GetDecimal(string key)
        {
            string value = GetValue(key);

            if (string.IsNullOrEmpty(value))
            {
                return(null);
            }

            decimal result;

            if (!CsvValueParser.TryParseDecimal(value, out result))
            {
                throw new InvalidCastException( );
            }
            return(result);
        }