Esempio n. 1
0
 private void UiLoad()
 {
     if (sd.GetKey())
     {
         sd = LoadService.LoadData(sd);
     }
 }
Esempio n. 2
0
        private static UiData CreateCandidateList(IList <string> voteDataString)
        {
            IList <VoteData> items = new List <VoteData>();

            if (int.TryParse(voteDataString[0], out var blockCount))
            {
                if (blockCount > 0)
                {
                    IList <string> blockList = new List <string>();
                    for (int i = 2; i < voteDataString.Count; i++)
                    {
                        if (_sd.GetKey())
                        {
                            // Разбиваем на блоки.
                            // Если пустая строка (разделитель).
                            if (string.IsNullOrEmpty(voteDataString[i].Trim(' ')))
                            {
                                var list = blockList.Clone();
                                CreateVoteData(list, i);
                                blockList = new List <string>();
                            }
                            // Если последняя строка.
                            else if (i == voteDataString.Count - 1)
                            {
                                blockList.Add(voteDataString[i]);
                                CreateVoteData(blockList, i);
                            }
                            // Читаем тело.
                            else
                            {
                                blockList.Add(voteDataString[i]);
                            }
                        }
                        else
                        {
                            return(_sd);
                        }
                    }
                }
                else
                {
                    _sd = new CreateCandidateListFail(GetMsg("Количество блоков меньше или равно нулю", 1));
                    return(_sd);
                }
            }
            else
            {
                _sd = new CreateCandidateListFail(GetMsg("Количество блоков не является числом.", 1));
                return(_sd);
            }
            return(_sd);
        }
Esempio n. 3
0
 public static UiData LoadData(UiData sd)
 {
     _sd = sd;
     if (File.Exists($"{Environment.CurrentDirectory}\\{_sd.FileName}"))
     {
         var loadResult = LoadFromFileAsync(_sd.FileName);
         if (sd.GetKey())
         {
             sd = CreateCandidateList(loadResult.Result);
         }
         return(sd);
     }
     else
     {
         return(new LoadFail("Файл не найден."));
     }
 }