Beispiel #1
0
        /// <summary>
        /// Reads the store values.
        /// </summary>
        public void ReadStoreValues(int limit)
        {
            if (limit == 0)
            {
                limit = int.MaxValue;
            }
            var fuExternalFile =
                new FetchUncomressExternalFile();

            fuExternalFile.GetExternalFile(FileUrl, _dataDirectory, _institutionsFile);
            fuExternalFile.UncompressExternalFile(_institutionsFile, _dataDirectory);

            var reader = File.OpenText(_dataFile);
            var csv    = new CsvReader(reader);
            var read   = csv.Read();
            var fields = csv.FieldHeaders;

            Type type = typeof(InstitutionRawData);
            var  ip   = type.GetProperties();
            var  institutionProperties =
                ip.ToDictionary(propertyInfo => propertyInfo.Name.ToLower());

            do
            {
                var institution = new InstitutionRawData();

                var i = 0;
                i = fields.Aggregate(i, (current, field) => PopulateInstitution(
                                         csv, current, field, institutionProperties, institution));

                if (++FileLenght % 500 == 0)
                {
                    Console.WriteLine("Processed {0} rows", FileLenght);
                }

                read = csv.Read();
                Institutions.Add(institution);
            } while (read && FileLenght < limit);
        }
 public void Setup()
 {
     _fuef = new FetchUncomressExternalFile();
 }