BudgetAnalyser.Engine.Statement.BankImportUtilities.FetchDate C# (CSharp) Method

FetchDate() private method

private FetchDate ( [ array, int index ) : System.DateTime
array [
index int
return System.DateTime
        internal DateTime FetchDate([NotNull] string[] array, int index)
        {
            if (array == null)
            {
                throw new ArgumentNullException(nameof(array));
            }

            if (index > array.Length - 1 || index < 0)
            {
                ThrowIndexOutOfRangeException(array, index);
            }

            var stringToParse = array[index];
            DateTime retval;
            if (!DateTime.TryParse(stringToParse, this.locale, DateTimeStyles.None, out retval))
            {
                this.logger.LogError(l => "BankImportUtilities: Unable to parse date: " + stringToParse);
                throw new InvalidDataException("Expected date, but provided data is invalid. " + stringToParse);
            }

            return retval;
        }