Пример #1
0
        private static async Task <List <ExcelCandidate> > ImportDeputies(string countyName)
        {
            Log.LogInformation(countyName + " Camera-Deputatilor");
            var url = GetUrl("Camera-Deputatilor", countyName);

            try
            {
                var bytes = await _httpClient.GetByteArrayAsync(url);

                var fileName = $"{countyName}-deputies.xlsx";
                await File.WriteAllBytesAsync(fileName, bytes);

                var columns = _headerColumns;
                if (countyName.EqualsIgnoringAccent("minoritati"))
                {
                    columns = _minoritiesHeaderColumns;
                }
                var json       = ExcelToJsonParser.GetJsonStringFromTabular(fileName, headerColumns: columns.ToArray());
                var candidates = JsonConvert.DeserializeObject <List <ExcelCandidate> >(json);
                File.Delete(fileName);
                return(candidates);
            }
            catch (Exception e)
            {
                Log.LogError(e);
            }

            return(new List <ExcelCandidate>());
        }
Пример #2
0
        private static async Task <List <ExcelCandidate> > ImportSenate(string countyName)
        {
            Log.LogInformation(countyName + " Senat");
            var url = GetUrl("Senat", countyName);

            try
            {
                var bytes = await _httpClient.GetByteArrayAsync(url);

                var fileName = $"{countyName}-senate.xlsx";
                await File.WriteAllBytesAsync(fileName, bytes);

                var json       = ExcelToJsonParser.GetJsonStringFromTabular(fileName, headerColumns: _headerColumns.ToArray());
                var candidates = JsonConvert.DeserializeObject <List <ExcelCandidate> >(json);
                File.Delete(fileName);
                return(candidates);
            }
            catch (Exception e)
            {
                Log.LogError(e);
                return(new List <ExcelCandidate>());
            }
        }